public class org.apache.commons.configuration2.io.FileHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.configuration2.io.FileHandler
  super_class: java.lang.Object
{
  private static final java.lang.String FILE_SCHEME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "file:"

  private static final java.lang.String FILE_SCHEME_SLASH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "file://"

  private static final org.apache.commons.configuration2.sync.SynchronizerSupport DUMMY_SYNC_SUPPORT;
    descriptor: Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.apache.commons.configuration2.io.FileBased content;
    descriptor: Lorg/apache/commons/configuration2/io/FileBased;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.atomic.AtomicReference<org.apache.commons.configuration2.io.FileLocator> fileLocator;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Lorg/apache/commons/configuration2/io/FileLocator;>;

  private final java.util.List<org.apache.commons.configuration2.io.FileHandlerListener> listeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/commons/configuration2/io/FileHandlerListener;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 134
            new org.apache.commons.configuration2.io.FileHandler$1
            dup
            invokespecial org.apache.commons.configuration2.io.FileHandler$1.<init>:()V
         1: .line 133
            putstatic org.apache.commons.configuration2.io.FileHandler.DUMMY_SYNC_SUPPORT:Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
         2: .line 156
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 176
            aload 0 /* this */
            aconst_null
            invokespecial org.apache.commons.configuration2.io.FileHandler.<init>:(Lorg/apache/commons/configuration2/io/FileBased;)V
         1: .line 177
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void <init>(org.apache.commons.configuration2.io.FileBased);
    descriptor: (Lorg/apache/commons/configuration2/io/FileBased;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileBased obj
         0: .line 187
            aload 0 /* this */
            aload 1 /* obj */
            invokestatic org.apache.commons.configuration2.io.FileHandler.emptyFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokespecial org.apache.commons.configuration2.io.FileHandler.<init>:(Lorg/apache/commons/configuration2/io/FileBased;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 188
            return
        end local 1 // org.apache.commons.configuration2.io.FileBased obj
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1   obj  Lorg/apache/commons/configuration2/io/FileBased;
    MethodParameters:
      Name  Flags
      obj   final

  public void <init>(org.apache.commons.configuration2.io.FileBased, org.apache.commons.configuration2.io.FileHandler);
    descriptor: (Lorg/apache/commons/configuration2/io/FileBased;Lorg/apache/commons/configuration2/io/FileHandler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileBased obj
        start local 2 // org.apache.commons.configuration2.io.FileHandler c
         0: .line 205
            aload 0 /* this */
            aload 1 /* obj */
            aload 2 /* c */
            invokestatic org.apache.commons.configuration2.io.FileHandler.checkSourceHandler:(Lorg/apache/commons/configuration2/io/FileHandler;)Lorg/apache/commons/configuration2/io/FileHandler;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokespecial org.apache.commons.configuration2.io.FileHandler.<init>:(Lorg/apache/commons/configuration2/io/FileBased;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 206
            return
        end local 2 // org.apache.commons.configuration2.io.FileHandler c
        end local 1 // org.apache.commons.configuration2.io.FileBased obj
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1   obj  Lorg/apache/commons/configuration2/io/FileBased;
            0    2     2     c  Lorg/apache/commons/configuration2/io/FileHandler;
    MethodParameters:
      Name  Flags
      obj   final
      c     final

  private void <init>(org.apache.commons.configuration2.io.FileBased, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileBased;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileBased obj
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 215
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 165
            aload 0 /* this */
         2: .line 166
            new java.util.concurrent.CopyOnWriteArrayList
            dup
            invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
            putfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
         3: .line 217
            aload 0 /* this */
            aload 1 /* obj */
            putfield org.apache.commons.configuration2.io.FileHandler.content:Lorg/apache/commons/configuration2/io/FileBased;
         4: .line 218
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            aload 2 /* locator */
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
            putfield org.apache.commons.configuration2.io.FileHandler.fileLocator:Ljava/util/concurrent/atomic/AtomicReference;
         5: .line 219
            return
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // org.apache.commons.configuration2.io.FileBased obj
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    6     1      obj  Lorg/apache/commons/configuration2/io/FileBased;
            0    6     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
         Name  Flags
      obj      final
      locator  final

  public static org.apache.commons.configuration2.io.FileHandler fromMap(java.util.Map<java.lang.String, ?>);
    descriptor: (Ljava/util/Map;)Lorg/apache/commons/configuration2/io/FileHandler;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.util.Map map
         0: .line 232
            new org.apache.commons.configuration2.io.FileHandler
            dup
            aconst_null
            aload 0 /* map */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fromMap:(Ljava/util/Map;)Lorg/apache/commons/configuration2/io/FileLocator;
            invokespecial org.apache.commons.configuration2.io.FileHandler.<init>:(Lorg/apache/commons/configuration2/io/FileBased;Lorg/apache/commons/configuration2/io/FileLocator;)V
            areturn
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   map  Ljava/util/Map<Ljava/lang/String;*>;
    Signature: (Ljava/util/Map<Ljava/lang/String;*>;)Lorg/apache/commons/configuration2/io/FileHandler;
    MethodParameters:
      Name  Flags
      map   final

  public final org.apache.commons.configuration2.io.FileBased getContent();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileBased;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 243
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.content:Lorg/apache/commons/configuration2/io/FileBased;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void addFileHandlerListener(org.apache.commons.configuration2.io.FileHandlerListener);
    descriptor: (Lorg/apache/commons/configuration2/io/FileHandlerListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         0: .line 255
            aload 1 /* l */
            ifnonnull 2
         1: .line 257
            new java.lang.IllegalArgumentException
            dup
            ldc "Listener must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 259
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            aload 1 /* l */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 260
            return
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;
    MethodParameters:
      Name  Flags
      l     final

  public void removeFileHandlerListener(org.apache.commons.configuration2.io.FileHandlerListener);
    descriptor: (Lorg/apache/commons/configuration2/io/FileHandlerListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         0: .line 269
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            aload 1 /* l */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 270
            return
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;
    MethodParameters:
      Name  Flags
      l     final

  public java.lang.String getFileName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 280
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 1 /* locator */
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         1: .line 281
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
            ifnull 3
         2: .line 283
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
            areturn
         3: .line 286
      StackMap locals: org.apache.commons.configuration2.io.FileLocator
      StackMap stack:
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnull 5
         4: .line 288
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.getFileName:(Ljava/net/URL;)Ljava/lang/String;
            areturn
         5: .line 291
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            1    6     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;

  public void setFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
         0: .line 305
            aload 1 /* fileName */
            invokestatic org.apache.commons.configuration2.io.FileHandler.normalizeFileURL:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         1: .line 306
            new org.apache.commons.configuration2.io.FileHandler$2
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* name */
            invokespecial org.apache.commons.configuration2.io.FileHandler$2.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Ljava/lang/String;)V
         2: .line 315
            invokevirtual org.apache.commons.configuration2.io.FileHandler$2.update:()V
         3: .line 316
            return
        end local 2 // java.lang.String name
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1  fileName  Ljava/lang/String;
            1    4     2      name  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  final

  public java.lang.String getBasePath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 326
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 1 /* locator */
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         1: .line 327
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getBasePath:()Ljava/lang/String;
            ifnull 3
         2: .line 329
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getBasePath:()Ljava/lang/String;
            areturn
         3: .line 332
      StackMap locals: org.apache.commons.configuration2.io.FileLocator
      StackMap stack:
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnull 5
         4: .line 334
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.getBasePath:(Ljava/net/URL;)Ljava/lang/String;
            areturn
         5: .line 337
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            1    6     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;

  public void setBasePath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String basePath
         0: .line 358
            aload 1 /* basePath */
            invokestatic org.apache.commons.configuration2.io.FileHandler.normalizeFileURL:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* path */
        start local 2 // java.lang.String path
         1: .line 359
            new org.apache.commons.configuration2.io.FileHandler$3
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* path */
            invokespecial org.apache.commons.configuration2.io.FileHandler$3.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Ljava/lang/String;)V
         2: .line 368
            invokevirtual org.apache.commons.configuration2.io.FileHandler$3.update:()V
         3: .line 369
            return
        end local 2 // java.lang.String path
        end local 1 // java.lang.String basePath
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1  basePath  Ljava/lang/String;
            1    4     2      path  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      basePath  final

  public java.io.File getFile();
    descriptor: ()Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 381
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokestatic org.apache.commons.configuration2.io.FileHandler.createFile:(Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/io/File;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void setFile(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.File file
         0: .line 394
            aload 1 /* file */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            astore 2 /* fileName */
        start local 2 // java.lang.String fileName
         1: .line 396
            aload 1 /* file */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
            ifnull 3
            aload 1 /* file */
            invokevirtual java.io.File.getParentFile:()Ljava/io/File;
         2: .line 397
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            goto 4
      StackMap locals: java.lang.String
      StackMap stack:
         3: aconst_null
         4: .line 395
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* basePath */
        start local 3 // java.lang.String basePath
         5: .line 398
            new org.apache.commons.configuration2.io.FileHandler$4
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* fileName */
            aload 3 /* basePath */
            invokespecial org.apache.commons.configuration2.io.FileHandler$4.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 406
            invokevirtual org.apache.commons.configuration2.io.FileHandler$4.update:()V
         7: .line 407
            return
        end local 3 // java.lang.String basePath
        end local 2 // java.lang.String fileName
        end local 1 // java.io.File file
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    8     1      file  Ljava/io/File;
            1    8     2  fileName  Ljava/lang/String;
            5    8     3  basePath  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      file  final

  public java.lang.String getPath();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 419
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 1 /* locator */
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         1: .line 420
            aload 1 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileHandler.createFile:(Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/io/File;
            astore 2 /* file */
        start local 2 // java.io.File file
         2: .line 421
            aload 1 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
            aload 2 /* file */
         3: .line 422
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getBasePath:()Ljava/lang/String;
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
         4: .line 421
            invokevirtual org.apache.commons.configuration2.io.FileSystem.getPath:(Ljava/io/File;Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 2 // java.io.File file
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            1    5     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;
            2    5     2     file  Ljava/io/File;

  public void setPath(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String path
         0: .line 437
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* path */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual org.apache.commons.configuration2.io.FileHandler.setFile:(Ljava/io/File;)V
         1: .line 438
            return
        end local 1 // java.lang.String path
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  final

  public java.net.URL getURL();
    descriptor: ()Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 450
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 1 /* locator */
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         1: .line 451
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnull 2
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            goto 3
         2: .line 452
      StackMap locals: org.apache.commons.configuration2.io.FileLocator
      StackMap stack:
            aload 1 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.locate:(Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/net/URL;
         3: .line 451
      StackMap locals:
      StackMap stack: java.net.URL
            areturn
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            1    4     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;

  public void setURL(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
         0: .line 466
            new org.apache.commons.configuration2.io.FileHandler$5
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* url */
            invokespecial org.apache.commons.configuration2.io.FileHandler$5.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Ljava/net/URL;)V
         1: .line 475
            invokevirtual org.apache.commons.configuration2.io.FileHandler$5.update:()V
         2: .line 476
            return
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1   url  Ljava/net/URL;
    MethodParameters:
      Name  Flags
      url   final

  public org.apache.commons.configuration2.io.FileLocator getFileLocator();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileLocator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 490
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.fileLocator:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileLocator
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void setFileLocator(org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 504
            aload 1 /* locator */
            ifnonnull 2
         1: .line 506
            new java.lang.IllegalArgumentException
            dup
            ldc "FileLocator must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.fileLocator:Ljava/util/concurrent/atomic/AtomicReference;
            aload 1 /* locator */
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         3: .line 510
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireLocationChangedEvent:()V
         4: .line 511
            return
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    5     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
         Name  Flags
      locator  final

  public boolean isLocationDefined();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 520
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.isLocationDefined:(Lorg/apache/commons/configuration2/io/FileLocator;)Z
            ireturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void clearLocation();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 529
            new org.apache.commons.configuration2.io.FileHandler$6
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial org.apache.commons.configuration2.io.FileHandler$6.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;)V
         1: .line 537
            invokevirtual org.apache.commons.configuration2.io.FileHandler$6.update:()V
         2: .line 538
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public java.lang.String getEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 548
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void setEncoding(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String encoding
         0: .line 560
            new org.apache.commons.configuration2.io.FileHandler$7
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* encoding */
            invokespecial org.apache.commons.configuration2.io.FileHandler$7.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Ljava/lang/String;)V
         1: .line 568
            invokevirtual org.apache.commons.configuration2.io.FileHandler$7.update:()V
         2: .line 569
            return
        end local 1 // java.lang.String encoding
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      encoding  final

  public org.apache.commons.configuration2.io.FileSystem getFileSystem();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileSystem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 580
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void setFileSystem(org.apache.commons.configuration2.io.FileSystem);
    descriptor: (Lorg/apache/commons/configuration2/io/FileSystem;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileSystem fileSystem
         0: .line 592
            new org.apache.commons.configuration2.io.FileHandler$8
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* fileSystem */
            invokespecial org.apache.commons.configuration2.io.FileHandler$8.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileSystem;)V
         1: .line 600
            invokevirtual org.apache.commons.configuration2.io.FileHandler$8.update:()V
         2: .line 601
            return
        end local 1 // org.apache.commons.configuration2.io.FileSystem fileSystem
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1  fileSystem  Lorg/apache/commons/configuration2/io/FileSystem;
    MethodParameters:
            Name  Flags
      fileSystem  final

  public void resetFileSystem();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 609
            aload 0 /* this */
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileHandler.setFileSystem:(Lorg/apache/commons/configuration2/io/FileSystem;)V
         1: .line 610
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public org.apache.commons.configuration2.io.FileLocationStrategy getLocationStrategy();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileLocationStrategy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 622
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainLocationStrategy:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocationStrategy;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  public void setLocationStrategy(org.apache.commons.configuration2.io.FileLocationStrategy);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocationStrategy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileLocationStrategy strategy
         0: .line 636
            new org.apache.commons.configuration2.io.FileHandler$9
            dup
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* strategy */
            invokespecial org.apache.commons.configuration2.io.FileHandler$9.<init>:(Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileHandler;Lorg/apache/commons/configuration2/io/FileLocationStrategy;)V
         1: .line 645
            invokevirtual org.apache.commons.configuration2.io.FileHandler$9.update:()V
         2: .line 646
            return
        end local 1 // org.apache.commons.configuration2.io.FileLocationStrategy strategy
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1  strategy  Lorg/apache/commons/configuration2/io/FileLocationStrategy;
    MethodParameters:
          Name  Flags
      strategy  final

  public boolean locate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 673
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 3 /* locator */
        start local 3 // org.apache.commons.configuration2.io.FileLocator locator
         1: .line 675
            aload 3 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fullyInitializedLocator:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocator;
         2: .line 674
            astore 4 /* fullLocator */
        start local 4 // org.apache.commons.configuration2.io.FileLocator fullLocator
         3: .line 676
            aload 4 /* fullLocator */
            ifnonnull 7
         4: .line 678
            iconst_0
            istore 1 /* result */
        start local 1 // boolean result
         5: .line 679
            aload 3 /* locator */
            astore 4 /* fullLocator */
         6: .line 680
            goto 12
        end local 1 // boolean result
         7: .line 684
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top top org.apache.commons.configuration2.io.FileLocator org.apache.commons.configuration2.io.FileLocator
      StackMap stack:
            aload 4 /* fullLocator */
            aload 3 /* locator */
            if_acmpne 10
         8: .line 685
            aload 3 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.isFullyInitialized:(Lorg/apache/commons/configuration2/io/FileLocator;)Z
            ifne 10
         9: .line 683
            iconst_0
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_1
      StackMap locals:
      StackMap stack: int
        11: istore 1 /* result */
        start local 1 // boolean result
        12: .line 687
      StackMap locals: org.apache.commons.configuration2.io.FileHandler int top org.apache.commons.configuration2.io.FileLocator org.apache.commons.configuration2.io.FileLocator
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.fileLocator:Ljava/util/concurrent/atomic/AtomicReference;
            aload 3 /* locator */
            aload 4 /* fullLocator */
            invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            istore 2 /* done */
        end local 4 // org.apache.commons.configuration2.io.FileLocator fullLocator
        end local 3 // org.apache.commons.configuration2.io.FileLocator locator
        start local 2 // boolean done
        13: .line 688
            iload 2 /* done */
            ifeq 0
        14: .line 690
            iload 1 /* result */
            ireturn
        end local 2 // boolean done
        end local 1 // boolean result
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lorg/apache/commons/configuration2/io/FileHandler;
            5    7     1       result  Z
           12   15     1       result  Z
           13   15     2         done  Z
            1   13     3      locator  Lorg/apache/commons/configuration2/io/FileLocator;
            3   13     4  fullLocator  Lorg/apache/commons/configuration2/io/FileLocator;

  public void load();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 701
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 702
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  public void load(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
         0: .line 715
            aload 0 /* this */
            aload 1 /* fileName */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 716
            return
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1  fileName  Ljava/lang/String;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      fileName  final

  public void load(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.File file
         0: .line 729
            aload 1 /* file */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.toURL:(Ljava/io/File;)Ljava/net/URL;
            astore 2 /* url */
        start local 2 // java.net.URL url
         1: .line 730
            goto 6
        end local 2 // java.net.URL url
         2: .line 731
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
            pop
         3: .line 733
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Cannot create URL from file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 734
            aload 1 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 733
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;)V
            athrow
        start local 2 // java.net.URL url
         6: .line 737
      StackMap locals: java.net.URL
      StackMap stack:
            aload 0 /* this */
            aload 2 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/net/URL;)V
         7: .line 738
            return
        end local 2 // java.net.URL url
        end local 1 // java.io.File file
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    8     1  file  Ljava/io/File;
            1    2     2   url  Ljava/net/URL;
            6    8     2   url  Ljava/net/URL;
      Exception table:
        from    to  target  type
           0     1       2  Class java.net.MalformedURLException
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      file  final

  public void load(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
         0: .line 749
            aload 0 /* this */
            aload 1 /* url */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 750
            return
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1   url  Ljava/net/URL;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      url   final

  public void load(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
         0: .line 762
            aload 0 /* this */
            aload 1 /* in */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/io/InputStream;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 763
            return
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1    in  Ljava/io/InputStream;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      in    final

  public void load(java.io.InputStream, java.lang.String);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
        start local 2 // java.lang.String encoding
         0: .line 778
            aload 0 /* this */
            aload 1 /* in */
            aload 2 /* encoding */
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromStream:(Ljava/io/InputStream;Ljava/lang/String;Ljava/net/URL;)V
         1: .line 779
            return
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1        in  Ljava/io/InputStream;
            0    2     2  encoding  Ljava/lang/String;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      in        final
      encoding  final

  public void load(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.Reader in
         0: .line 790
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContent:()V
         1: .line 791
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.injectNullFileLocator:()V
         2: .line 792
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromReader:(Ljava/io/Reader;)V
         3: .line 793
            return
        end local 1 // java.io.Reader in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1    in  Ljava/io/Reader;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      in    final

  public void save();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 804
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 805
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  public void save(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
         0: .line 818
            aload 0 /* this */
            aload 1 /* fileName */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 819
            return
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1  fileName  Ljava/lang/String;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      fileName  final

  public void save(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
         0: .line 831
            aload 0 /* this */
            aload 1 /* url */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 832
            return
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1   url  Ljava/net/URL;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      url   final

  public void save(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.File file
         0: .line 845
            aload 0 /* this */
            aload 1 /* file */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/io/File;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 846
            return
        end local 1 // java.io.File file
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1  file  Ljava/io/File;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      file  final

  public void save(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.OutputStream out
         0: .line 858
            aload 0 /* this */
            aload 1 /* out */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContentAndGetLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/io/OutputStream;Lorg/apache/commons/configuration2/io/FileLocator;)V
         1: .line 859
            return
        end local 1 // java.io.OutputStream out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1   out  Ljava/io/OutputStream;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      out   final

  public void save(java.io.OutputStream, java.lang.String);
    descriptor: (Ljava/io/OutputStream;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.OutputStream out
        start local 2 // java.lang.String encoding
         0: .line 874
            aload 0 /* this */
            aload 1 /* out */
            aload 2 /* encoding */
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileHandler.saveToStream:(Ljava/io/OutputStream;Ljava/lang/String;Ljava/net/URL;)V
         1: .line 875
            return
        end local 2 // java.lang.String encoding
        end local 1 // java.io.OutputStream out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1       out  Ljava/io/OutputStream;
            0    2     2  encoding  Ljava/lang/String;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      out       final
      encoding  final

  public void save(java.io.Writer);
    descriptor: (Ljava/io/Writer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.Writer out
         0: .line 886
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContent:()V
         1: .line 887
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.injectNullFileLocator:()V
         2: .line 888
            aload 0 /* this */
            aload 1 /* out */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.saveToWriter:(Ljava/io/Writer;)V
         3: .line 889
            return
        end local 1 // java.io.Writer out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1   out  Ljava/io/Writer;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      out   final

  private org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder prepareNullLocatorBuilder();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 900
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fileLocator:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.sourceURL:(Ljava/net/URL;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
         1: .line 901
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.basePath:(Ljava/lang/String;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.fileName:(Ljava/lang/String;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
         2: .line 900
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  private void injectNullFileLocator();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 914
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            instanceof org.apache.commons.configuration2.io.FileLocatorAware
            ifeq 3
         1: .line 916
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.prepareNullLocatorBuilder:()Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.create:()Lorg/apache/commons/configuration2/io/FileLocator;
            astore 1 /* locator */
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         2: .line 917
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            checkcast org.apache.commons.configuration2.io.FileLocatorAware
            aload 1 /* locator */
            invokeinterface org.apache.commons.configuration2.io.FileLocatorAware.initFileLocator:(Lorg/apache/commons/configuration2/io/FileLocator;)V
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
         3: .line 919
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;

  private void injectFileLocator(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
         0: .line 930
            aload 1 /* url */
            ifnonnull 3
         1: .line 932
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.injectNullFileLocator:()V
         2: .line 933
            goto 7
         3: .line 936
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            instanceof org.apache.commons.configuration2.io.FileLocatorAware
            ifeq 7
         4: .line 939
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.prepareNullLocatorBuilder:()Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            aload 1 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.sourceURL:(Ljava/net/URL;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.create:()Lorg/apache/commons/configuration2/io/FileLocator;
         5: .line 938
            astore 2 /* locator */
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         6: .line 940
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            checkcast org.apache.commons.configuration2.io.FileLocatorAware
            aload 2 /* locator */
            invokeinterface org.apache.commons.configuration2.io.FileLocatorAware.initFileLocator:(Lorg/apache/commons/configuration2/io/FileLocator;)V
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
         7: .line 943
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    8     1      url  Ljava/net/URL;
            6    7     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
      Name  Flags
      url   final

  private org.apache.commons.configuration2.sync.SynchronizerSupport fetchSynchronizerSupport();
    descriptor: ()Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 955
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            instanceof org.apache.commons.configuration2.sync.SynchronizerSupport
            ifeq 2
         1: .line 957
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            checkcast org.apache.commons.configuration2.sync.SynchronizerSupport
            areturn
         2: .line 959
      StackMap locals:
      StackMap stack:
            getstatic org.apache.commons.configuration2.io.FileHandler.DUMMY_SYNC_SUPPORT:Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration2/io/FileHandler;

  private void load(org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 971
            aload 1 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.locateOrThrow:(Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/net/URL;
            astore 2 /* url */
        start local 2 // java.net.URL url
         1: .line 972
            aload 0 /* this */
            aload 2 /* url */
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
         2: .line 973
            return
        end local 2 // java.net.URL url
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;
            1    3     2      url  Ljava/net/URL;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      locator  final

  private void load(java.net.URL, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 984
            aconst_null
            astore 3 /* in */
        start local 3 // java.io.InputStream in
         1: .line 988
            aload 2 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
            aload 1 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileSystem.getInputStream:(Ljava/net/URL;)Ljava/io/InputStream;
            astore 3 /* in */
         2: .line 989
            aload 0 /* this */
            aload 3 /* in */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            aload 1 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromStream:(Ljava/io/InputStream;Ljava/lang/String;Ljava/net/URL;)V
         3: .line 990
            goto 13
         4: .line 991
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.net.URL org.apache.commons.configuration2.io.FileLocator java.io.InputStream
      StackMap stack: org.apache.commons.configuration2.ex.ConfigurationException
            astore 4 /* e */
        start local 4 // org.apache.commons.configuration2.ex.ConfigurationException e
         5: .line 993
            aload 4 /* e */
            athrow
        end local 4 // org.apache.commons.configuration2.ex.ConfigurationException e
         6: .line 995
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
         7: .line 997
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
         8: .line 998
            new java.lang.StringBuilder
            dup
            ldc "Unable to load the configuration from the URL "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* e */
         9: .line 997
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.Exception e
        10: .line 1001
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        11: .line 1002
            aload 3 /* in */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
        12: .line 1003
            aload 5
            athrow
        13: .line 1002
      StackMap locals:
      StackMap stack:
            aload 3 /* in */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
        14: .line 1004
            return
        end local 3 // java.io.InputStream in
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   15     1      url  Ljava/net/URL;
            0   15     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
            1   15     3       in  Ljava/io/InputStream;
            5    6     4        e  Lorg/apache/commons/configuration2/ex/ConfigurationException;
            7   10     4        e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     3       4  Class org.apache.commons.configuration2.ex.ConfigurationException
           1     3       6  Class java.lang.Exception
           1    10      10  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      url      final
      locator  final

  private void load(java.lang.String, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1016
            aload 0 /* this */
            aload 1 /* fileName */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.createLocatorWithFileName:(Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocator;
            astore 3 /* locFileName */
        start local 3 // org.apache.commons.configuration2.io.FileLocator locFileName
         1: .line 1017
            aload 3 /* locFileName */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.locateOrThrow:(Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/net/URL;
            astore 4 /* url */
        start local 4 // java.net.URL url
         2: .line 1018
            aload 0 /* this */
            aload 4 /* url */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
         3: .line 1019
            return
        end local 4 // java.net.URL url
        end local 3 // org.apache.commons.configuration2.io.FileLocator locFileName
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    4     1     fileName  Ljava/lang/String;
            0    4     2      locator  Lorg/apache/commons/configuration2/io/FileLocator;
            1    4     3  locFileName  Lorg/apache/commons/configuration2/io/FileLocator;
            2    4     4          url  Ljava/net/URL;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      fileName  final
      locator   final

  private void load(java.io.InputStream, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/io/InputStream;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1031
            aload 0 /* this */
            aload 1 /* in */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.load:(Ljava/io/InputStream;Ljava/lang/String;)V
         1: .line 1032
            return
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1       in  Ljava/io/InputStream;
            0    2     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      in       final
      locator  final

  private void loadFromStream(java.io.InputStream, java.lang.String, java.net.URL);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;Ljava/net/URL;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
        start local 2 // java.lang.String encoding
        start local 3 // java.net.URL url
         0: .line 1045
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContent:()V
         1: .line 1046
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fetchSynchronizerSupport:()Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
            astore 4 /* syncSupport */
        start local 4 // org.apache.commons.configuration2.sync.SynchronizerSupport syncSupport
         2: .line 1047
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.lock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
         3: .line 1050
            aload 0 /* this */
            aload 3 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.injectFileLocator:(Ljava/net/URL;)V
         4: .line 1052
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            instanceof org.apache.commons.configuration2.io.InputStreamSupport
            ifeq 7
         5: .line 1054
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromStreamDirectly:(Ljava/io/InputStream;)V
         6: .line 1055
            goto 12
         7: .line 1058
      StackMap locals: org.apache.commons.configuration2.sync.SynchronizerSupport
      StackMap stack:
            aload 0 /* this */
            aload 1 /* in */
            aload 2 /* encoding */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromTransformedStream:(Ljava/io/InputStream;Ljava/lang/String;)V
         8: .line 1060
            goto 12
         9: .line 1062
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
        10: .line 1063
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.unlock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
        11: .line 1064
            aload 5
            athrow
        12: .line 1063
      StackMap locals:
      StackMap stack:
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.unlock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
        13: .line 1065
            return
        end local 4 // org.apache.commons.configuration2.sync.SynchronizerSupport syncSupport
        end local 3 // java.net.URL url
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   14     1           in  Ljava/io/InputStream;
            0   14     2     encoding  Ljava/lang/String;
            0   14     3          url  Ljava/net/URL;
            2   14     4  syncSupport  Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
      Exception table:
        from    to  target  type
           3     9       9  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      in        final
      encoding  final
      url       final

  private void loadFromStreamDirectly(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
         0: .line 1079
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            checkcast org.apache.commons.configuration2.io.InputStreamSupport
            aload 1 /* in */
            invokeinterface org.apache.commons.configuration2.io.InputStreamSupport.read:(Ljava/io/InputStream;)V
         1: .line 1080
            goto 4
         2: .line 1081
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
         3: .line 1083
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 2 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
         4: .line 1085
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    5     1    in  Ljava/io/InputStream;
            3    4     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      in    final

  private void loadFromTransformedStream(java.io.InputStream, java.lang.String);
    descriptor: (Ljava/io/InputStream;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.InputStream in
        start local 2 // java.lang.String encoding
         0: .line 1098
            aconst_null
            astore 3 /* reader */
        start local 3 // java.io.Reader reader
         1: .line 1100
            aload 2 /* encoding */
            ifnull 9
         2: .line 1104
            new java.io.InputStreamReader
            dup
            aload 1 /* in */
            aload 2 /* encoding */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
            astore 3 /* reader */
         3: .line 1105
            goto 9
         4: .line 1106
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.io.InputStream java.lang.String java.io.Reader
      StackMap stack: java.io.UnsupportedEncodingException
            astore 4 /* e */
        start local 4 // java.io.UnsupportedEncodingException e
         5: .line 1108
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
         6: .line 1109
            ldc "The requested encoding is not supported, try the default encoding."
         7: .line 1110
            aload 4 /* e */
         8: .line 1108
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.UnsupportedEncodingException e
         9: .line 1114
      StackMap locals:
      StackMap stack:
            aload 3 /* reader */
            ifnonnull 11
        10: .line 1116
            new java.io.InputStreamReader
            dup
            aload 1 /* in */
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
            astore 3 /* reader */
        11: .line 1119
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* reader */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.loadFromReader:(Ljava/io/Reader;)V
        12: .line 1120
            return
        end local 3 // java.io.Reader reader
        end local 2 // java.lang.String encoding
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   13     1        in  Ljava/io/InputStream;
            0   13     2  encoding  Ljava/lang/String;
            1   13     3    reader  Ljava/io/Reader;
            5    9     4         e  Ljava/io/UnsupportedEncodingException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.io.UnsupportedEncodingException
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      in        final
      encoding  final

  private void loadFromReader(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.Reader in
         0: .line 1130
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireLoadingEvent:()V
         1: .line 1133
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            aload 1 /* in */
            invokeinterface org.apache.commons.configuration2.io.FileBased.read:(Ljava/io/Reader;)V
         2: .line 1134
            goto 8
         3: .line 1135
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* ioex */
        start local 2 // java.io.IOException ioex
         4: .line 1137
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 2 /* ioex */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException ioex
         5: .line 1140
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         6: .line 1141
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireLoadedEvent:()V
         7: .line 1142
            aload 3
            athrow
         8: .line 1141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireLoadedEvent:()V
         9: .line 1143
            return
        end local 1 // java.io.Reader in
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   10     1    in  Ljava/io/Reader;
            4    5     2  ioex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.io.IOException
           1     5       5  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      in    final

  private void save(org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1155
            aload 1 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.isLocationDefined:(Lorg/apache/commons/configuration2/io/FileLocator;)Z
            ifne 2
         1: .line 1157
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "No file location has been set!"
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1160
      StackMap locals:
      StackMap stack:
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnull 5
         3: .line 1162
            aload 0 /* this */
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
         4: .line 1163
            goto 6
         5: .line 1166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
            aload 1 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)V
         6: .line 1168
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.commons.configuration2.io.FileLocator locator
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    7     1  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      locator  final

  private void save(java.lang.String, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1184
            aload 2 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
         1: .line 1185
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getBasePath:()Ljava/lang/String;
            aload 1 /* fileName */
         2: .line 1184
            invokevirtual org.apache.commons.configuration2.io.FileSystem.getURL:(Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL;
            astore 3 /* url */
        start local 3 // java.net.URL url
         3: .line 1186
            goto 6
        end local 3 // java.net.URL url
         4: .line 1187
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
            astore 4 /* e */
        start local 4 // java.net.MalformedURLException e
         5: .line 1189
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 4 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.net.MalformedURLException e
        start local 3 // java.net.URL url
         6: .line 1192
      StackMap locals: java.net.URL
      StackMap stack:
            aload 3 /* url */
            ifnonnull 10
         7: .line 1194
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
         8: .line 1195
            new java.lang.StringBuilder
            dup
            ldc "Cannot locate configuration source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 1194
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* url */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
        11: .line 1198
            return
        end local 3 // java.net.URL url
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   12     1  fileName  Ljava/lang/String;
            0   12     2   locator  Lorg/apache/commons/configuration2/io/FileLocator;
            3    4     3       url  Ljava/net/URL;
            6   12     3       url  Ljava/net/URL;
            5    6     4         e  Ljava/net/MalformedURLException;
      Exception table:
        from    to  target  type
           0     3       4  Class java.net.MalformedURLException
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      fileName  final
      locator   final

  private void save(java.net.URL, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/net/URL;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.net.URL url
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1210
            aconst_null
            astore 3 /* out */
        start local 3 // java.io.OutputStream out
         1: .line 1213
            aload 2 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
            aload 1 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileSystem.getOutputStream:(Ljava/net/URL;)Ljava/io/OutputStream;
            astore 3 /* out */
         2: .line 1214
            aload 0 /* this */
            aload 3 /* out */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            aload 1 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.saveToStream:(Ljava/io/OutputStream;Ljava/lang/String;Ljava/net/URL;)V
         3: .line 1215
            aload 3 /* out */
            instanceof org.apache.commons.configuration2.io.VerifiableOutputStream
            ifeq 11
         4: .line 1219
            aload 3 /* out */
            checkcast org.apache.commons.configuration2.io.VerifiableOutputStream
            invokevirtual org.apache.commons.configuration2.io.VerifiableOutputStream.verify:()V
         5: .line 1220
            goto 11
         6: .line 1221
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.net.URL org.apache.commons.configuration2.io.FileLocator java.io.OutputStream
      StackMap stack: java.io.IOException
            astore 4 /* e */
        start local 4 // java.io.IOException e
         7: .line 1223
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 4 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException e
         8: .line 1228
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
         9: .line 1229
            aload 3 /* out */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
        10: .line 1230
            aload 5
            athrow
        11: .line 1229
      StackMap locals:
      StackMap stack:
            aload 3 /* out */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
        12: .line 1231
            return
        end local 3 // java.io.OutputStream out
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.net.URL url
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   13     1      url  Ljava/net/URL;
            0   13     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
            1   13     3      out  Ljava/io/OutputStream;
            7    8     4        e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.io.IOException
           1     8       8  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      url      final
      locator  final

  private void save(java.io.File, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/io/File;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.File file
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1243
            aconst_null
            astore 3 /* out */
        start local 3 // java.io.OutputStream out
         1: .line 1247
            aload 2 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.obtainFileSystem:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileSystem;
            aload 1 /* file */
            invokevirtual org.apache.commons.configuration2.io.FileSystem.getOutputStream:(Ljava/io/File;)Ljava/io/OutputStream;
            astore 3 /* out */
         2: .line 1248
            aload 0 /* this */
            aload 3 /* out */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            aload 1 /* file */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toURL:()Ljava/net/URL;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.saveToStream:(Ljava/io/OutputStream;Ljava/lang/String;Ljava/net/URL;)V
         3: .line 1249
            goto 9
         4: .line 1250
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.io.File org.apache.commons.configuration2.io.FileLocator java.io.OutputStream
      StackMap stack: java.net.MalformedURLException
            astore 4 /* muex */
        start local 4 // java.net.MalformedURLException muex
         5: .line 1252
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 4 /* muex */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.net.MalformedURLException muex
         6: .line 1255
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 5
         7: .line 1256
            aload 3 /* out */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
         8: .line 1257
            aload 5
            athrow
         9: .line 1256
      StackMap locals:
      StackMap stack:
            aload 3 /* out */
            invokestatic org.apache.commons.configuration2.io.FileHandler.closeSilent:(Ljava/io/Closeable;)V
        10: .line 1258
            return
        end local 3 // java.io.OutputStream out
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.io.File file
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   11     1     file  Ljava/io/File;
            0   11     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
            1   11     3      out  Ljava/io/OutputStream;
            5    6     4     muex  Ljava/net/MalformedURLException;
      Exception table:
        from    to  target  type
           1     3       4  Class java.net.MalformedURLException
           1     6       6  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      file     final
      locator  final

  private void save(java.io.OutputStream, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/io/OutputStream;Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.OutputStream out
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1271
            aload 0 /* this */
            aload 1 /* out */
            aload 2 /* locator */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.io.FileHandler.save:(Ljava/io/OutputStream;Ljava/lang/String;)V
         1: .line 1272
            return
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.io.OutputStream out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    2     1      out  Ljava/io/OutputStream;
            0    2     2  locator  Lorg/apache/commons/configuration2/io/FileLocator;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
         Name  Flags
      out      final
      locator  final

  private void saveToStream(java.io.OutputStream, java.lang.String, java.net.URL);
    descriptor: (Ljava/io/OutputStream;Ljava/lang/String;Ljava/net/URL;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.OutputStream out
        start local 2 // java.lang.String encoding
        start local 3 // java.net.URL url
         0: .line 1285
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContent:()V
         1: .line 1286
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fetchSynchronizerSupport:()Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
            astore 4 /* syncSupport */
        start local 4 // org.apache.commons.configuration2.sync.SynchronizerSupport syncSupport
         2: .line 1287
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.lock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
         3: .line 1290
            aload 0 /* this */
            aload 3 /* url */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.injectFileLocator:(Ljava/net/URL;)V
         4: .line 1291
            aconst_null
            astore 5 /* writer */
        start local 5 // java.io.Writer writer
         5: .line 1293
            aload 2 /* encoding */
            ifnull 13
         6: .line 1297
            new java.io.OutputStreamWriter
            dup
            aload 1 /* out */
            aload 2 /* encoding */
            invokespecial java.io.OutputStreamWriter.<init>:(Ljava/io/OutputStream;Ljava/lang/String;)V
            astore 5 /* writer */
         7: .line 1298
            goto 13
         8: .line 1299
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.io.OutputStream java.lang.String java.net.URL org.apache.commons.configuration2.sync.SynchronizerSupport java.io.Writer
      StackMap stack: java.io.UnsupportedEncodingException
            astore 6 /* e */
        start local 6 // java.io.UnsupportedEncodingException e
         9: .line 1301
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
        10: .line 1302
            ldc "The requested encoding is not supported, try the default encoding."
        11: .line 1303
            aload 6 /* e */
        12: .line 1301
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.UnsupportedEncodingException e
        13: .line 1307
      StackMap locals:
      StackMap stack:
            aload 5 /* writer */
            ifnonnull 15
        14: .line 1309
            new java.io.OutputStreamWriter
            dup
            aload 1 /* out */
            invokespecial java.io.OutputStreamWriter.<init>:(Ljava/io/OutputStream;)V
            astore 5 /* writer */
        15: .line 1312
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* writer */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.saveToWriter:(Ljava/io/Writer;)V
        end local 5 // java.io.Writer writer
        16: .line 1313
            goto 20
        17: .line 1315
      StackMap locals: org.apache.commons.configuration2.io.FileHandler java.io.OutputStream java.lang.String java.net.URL org.apache.commons.configuration2.sync.SynchronizerSupport
      StackMap stack: java.lang.Throwable
            astore 7
        18: .line 1316
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.unlock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
        19: .line 1317
            aload 7
            athrow
        20: .line 1316
      StackMap locals:
      StackMap stack:
            aload 4 /* syncSupport */
            getstatic org.apache.commons.configuration2.sync.LockMode.WRITE:Lorg/apache/commons/configuration2/sync/LockMode;
            invokeinterface org.apache.commons.configuration2.sync.SynchronizerSupport.unlock:(Lorg/apache/commons/configuration2/sync/LockMode;)V
        21: .line 1318
            return
        end local 4 // org.apache.commons.configuration2.sync.SynchronizerSupport syncSupport
        end local 3 // java.net.URL url
        end local 2 // java.lang.String encoding
        end local 1 // java.io.OutputStream out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   22     1          out  Ljava/io/OutputStream;
            0   22     2     encoding  Ljava/lang/String;
            0   22     3          url  Ljava/net/URL;
            2   22     4  syncSupport  Lorg/apache/commons/configuration2/sync/SynchronizerSupport;
            5   16     5       writer  Ljava/io/Writer;
            9   13     6            e  Ljava/io/UnsupportedEncodingException;
      Exception table:
        from    to  target  type
           6     7       8  Class java.io.UnsupportedEncodingException
           3    17      17  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
          Name  Flags
      out       final
      encoding  final
      url       final

  private void saveToWriter(java.io.Writer);
    descriptor: (Ljava/io/Writer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.io.Writer out
         0: .line 1328
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireSavingEvent:()V
         1: .line 1331
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            aload 1 /* out */
            invokeinterface org.apache.commons.configuration2.io.FileBased.write:(Ljava/io/Writer;)V
         2: .line 1332
            goto 8
         3: .line 1333
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* ioex */
        start local 2 // java.io.IOException ioex
         4: .line 1335
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            aload 2 /* ioex */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException ioex
         5: .line 1338
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         6: .line 1339
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireSavedEvent:()V
         7: .line 1340
            aload 3
            athrow
         8: .line 1339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.fireSavedEvent:()V
         9: .line 1341
            return
        end local 1 // java.io.Writer out
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            0   10     1   out  Ljava/io/Writer;
            4    5     2  ioex  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.io.IOException
           1     5       5  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
      Name  Flags
      out   final

  private org.apache.commons.configuration2.io.FileLocator createLocatorWithFileName(java.lang.String, org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Ljava/lang/String;Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocator;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
        start local 1 // java.lang.String fileName
        start local 2 // org.apache.commons.configuration2.io.FileLocator locator
         0: .line 1354
            aload 2 /* locator */
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fileLocator:(Lorg/apache/commons/configuration2/io/FileLocator;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            aconst_null
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.sourceURL:(Ljava/net/URL;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
         1: .line 1355
            aload 1 /* fileName */
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.fileName:(Ljava/lang/String;)Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.create:()Lorg/apache/commons/configuration2/io/FileLocator;
         2: .line 1354
            areturn
        end local 2 // org.apache.commons.configuration2.io.FileLocator locator
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/commons/configuration2/io/FileHandler;
            0    3     1  fileName  Ljava/lang/String;
            0    3     2   locator  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
          Name  Flags
      fileName  final
      locator   final

  private void checkContent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1366
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getContent:()Lorg/apache/commons/configuration2/io/FileBased;
            ifnonnull 2
         1: .line 1368
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "No content available!"
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1370
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  private org.apache.commons.configuration2.io.FileLocator checkContentAndGetLocator();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileLocator;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1384
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.checkContent:()V
         1: .line 1385
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.io.FileHandler.getFileLocator:()Lorg/apache/commons/configuration2/io/FileLocator;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  private void fireLoadingEvent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1393
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileHandlerListener
            astore 1 /* l */
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         2: .line 1395
            aload 1 /* l */
            aload 0 /* this */
            invokeinterface org.apache.commons.configuration2.io.FileHandlerListener.loading:(Lorg/apache/commons/configuration2/io/FileHandler;)V
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         3: .line 1393
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1397
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;

  private void fireLoadedEvent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1404
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileHandlerListener
            astore 1 /* l */
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         2: .line 1406
            aload 1 /* l */
            aload 0 /* this */
            invokeinterface org.apache.commons.configuration2.io.FileHandlerListener.loaded:(Lorg/apache/commons/configuration2/io/FileHandler;)V
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         3: .line 1404
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1408
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;

  private void fireSavingEvent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1415
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileHandlerListener
            astore 1 /* l */
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         2: .line 1417
            aload 1 /* l */
            aload 0 /* this */
            invokeinterface org.apache.commons.configuration2.io.FileHandlerListener.saving:(Lorg/apache/commons/configuration2/io/FileHandler;)V
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         3: .line 1415
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1419
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;

  private void fireSavedEvent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1426
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileHandlerListener
            astore 1 /* l */
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         2: .line 1428
            aload 1 /* l */
            aload 0 /* this */
            invokeinterface org.apache.commons.configuration2.io.FileHandlerListener.saved:(Lorg/apache/commons/configuration2/io/FileHandler;)V
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         3: .line 1426
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1430
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;

  private void fireLocationChangedEvent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler this
         0: .line 1437
            aload 0 /* this */
            getfield org.apache.commons.configuration2.io.FileHandler.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.commons.configuration2.io.FileHandler top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.io.FileHandlerListener
            astore 1 /* l */
        start local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         2: .line 1439
            aload 1 /* l */
            aload 0 /* this */
            invokeinterface org.apache.commons.configuration2.io.FileHandlerListener.locationChanged:(Lorg/apache/commons/configuration2/io/FileHandler;)V
        end local 1 // org.apache.commons.configuration2.io.FileHandlerListener l
         3: .line 1437
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1441
            return
        end local 0 // org.apache.commons.configuration2.io.FileHandler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/configuration2/io/FileHandler;
            2    3     1     l  Lorg/apache/commons/configuration2/io/FileHandlerListener;

  private static java.lang.String normalizeFileURL(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String fileName
         0: .line 1452
            aload 0 /* fileName */
            ifnull 6
            aload 0 /* fileName */
            ldc "file:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 6
         1: .line 1453
            aload 0 /* fileName */
            ldc "file://"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 6
         2: .line 1456
            new java.lang.StringBuilder
            dup
            ldc "file://"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 1457
            aload 0 /* fileName */
            ldc "file:"
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 1456
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 1455
            astore 0 /* fileName */
         6: .line 1459
      StackMap locals:
      StackMap stack:
            aload 0 /* fileName */
            areturn
        end local 0 // java.lang.String fileName
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  private static void closeSilent(java.io.Closeable);
    descriptor: (Ljava/io/Closeable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.io.Closeable cl
         0: .line 1472
            aload 0 /* cl */
            ifnull 5
         1: .line 1474
            aload 0 /* cl */
            invokeinterface java.io.Closeable.close:()V
         2: .line 1476
            goto 5
         3: .line 1477
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
         4: .line 1479
            ldc Lorg/apache/commons/configuration2/io/FileHandler;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Exception when closing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* cl */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* e */
            invokeinterface org.apache.commons.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 1 // java.io.IOException e
         5: .line 1481
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.io.Closeable cl
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0    cl  Ljava/io/Closeable;
            4    5     1     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.io.IOException
    MethodParameters:
      Name  Flags
      cl    final

  private static java.io.File createFile(org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocator;)Ljava/io/File;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileLocator loc
         0: .line 1493
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
            ifnonnull 2
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnonnull 2
         1: .line 1495
            aconst_null
            areturn
         2: .line 1497
      StackMap locals:
      StackMap stack:
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            ifnull 4
         3: .line 1499
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fileFromURL:(Ljava/net/URL;)Ljava/io/File;
            areturn
         4: .line 1503
      StackMap locals:
      StackMap stack:
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getBasePath:()Ljava/lang/String;
         5: .line 1504
            aload 0 /* loc */
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getFileName:()Ljava/lang/String;
         6: .line 1503
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.getFile:(Ljava/lang/String;Ljava/lang/String;)Ljava/io/File;
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileLocator loc
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0   loc  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
      Name  Flags
      loc   final

  private static org.apache.commons.configuration2.io.FileLocator emptyFileLocator();
    descriptor: ()Lorg/apache/commons/configuration2/io/FileLocator;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1515
            invokestatic org.apache.commons.configuration2.io.FileLocatorUtils.fileLocator:()Lorg/apache/commons/configuration2/io/FileLocator$FileLocatorBuilder;
            invokevirtual org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder.create:()Lorg/apache/commons/configuration2/io/FileLocator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static org.apache.commons.configuration2.io.FileHandler checkSourceHandler(org.apache.commons.configuration2.io.FileHandler);
    descriptor: (Lorg/apache/commons/configuration2/io/FileHandler;)Lorg/apache/commons/configuration2/io/FileHandler;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.io.FileHandler c
         0: .line 1527
            aload 0 /* c */
            ifnonnull 4
         1: .line 1529
            new java.lang.IllegalArgumentException
            dup
         2: .line 1530
            ldc "FileHandler to assign must not be null!"
         3: .line 1529
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1532
      StackMap locals:
      StackMap stack:
            aload 0 /* c */
            areturn
        end local 0 // org.apache.commons.configuration2.io.FileHandler c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     c  Lorg/apache/commons/configuration2/io/FileHandler;
    MethodParameters:
      Name  Flags
      c     final
}
SourceFile: "FileHandler.java"
NestMembers:
  org.apache.commons.configuration2.io.FileHandler$1  org.apache.commons.configuration2.io.FileHandler$2  org.apache.commons.configuration2.io.FileHandler$3  org.apache.commons.configuration2.io.FileHandler$4  org.apache.commons.configuration2.io.FileHandler$5  org.apache.commons.configuration2.io.FileHandler$6  org.apache.commons.configuration2.io.FileHandler$7  org.apache.commons.configuration2.io.FileHandler$8  org.apache.commons.configuration2.io.FileHandler$9  org.apache.commons.configuration2.io.FileHandler$Updater
InnerClasses:
  org.apache.commons.configuration2.io.FileHandler$1
  org.apache.commons.configuration2.io.FileHandler$2
  org.apache.commons.configuration2.io.FileHandler$3
  org.apache.commons.configuration2.io.FileHandler$4
  org.apache.commons.configuration2.io.FileHandler$5
  org.apache.commons.configuration2.io.FileHandler$6
  org.apache.commons.configuration2.io.FileHandler$7
  org.apache.commons.configuration2.io.FileHandler$8
  org.apache.commons.configuration2.io.FileHandler$9
  private abstract Updater = org.apache.commons.configuration2.io.FileHandler$Updater of org.apache.commons.configuration2.io.FileHandler
  public final FileLocatorBuilder = org.apache.commons.configuration2.io.FileLocator$FileLocatorBuilder of org.apache.commons.configuration2.io.FileLocator