public class org.apache.commons.configuration2.XMLConfiguration extends org.apache.commons.configuration2.BaseHierarchicalConfiguration implements org.apache.commons.configuration2.FileBasedConfiguration, org.apache.commons.configuration2.io.FileLocatorAware, org.apache.commons.configuration2.io.InputStreamSupport
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.configuration2.XMLConfiguration
  super_class: org.apache.commons.configuration2.BaseHierarchicalConfiguration
{
  static final int DEFAULT_INDENT_SIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  static final java.lang.String INDENT_AMOUNT_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "{http://xml.apache.org/xslt}indent-amount"

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

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

  private static final java.lang.String ATTR_SPACE_INTERNAL;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "config-xml:space"

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

  private static final java.lang.String JAXP_SCHEMA_LANGUAGE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "http://java.sun.com/xml/jaxp/properties/schemaLanguage"

  private static final java.lang.String W3C_XML_SCHEMA;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/XMLSchema"

  private java.lang.String rootElementName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String publicID;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String systemID;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private javax.xml.parsers.DocumentBuilder documentBuilder;
    descriptor: Ljavax/xml/parsers/DocumentBuilder;
    flags: (0x0002) ACC_PRIVATE

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

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

  private org.xml.sax.EntityResolver entityResolver;
    descriptor: Lorg/xml/sax/EntityResolver;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.configuration2.io.FileLocator locator;
    descriptor: Lorg/apache/commons/configuration2/io/FileLocator;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 250
            aload 0 /* this */
            invokespecial org.apache.commons.configuration2.BaseHierarchicalConfiguration.<init>:()V
         1: .line 240
            aload 0 /* this */
            new org.apache.commons.configuration2.resolver.DefaultEntityResolver
            dup
            invokespecial org.apache.commons.configuration2.resolver.DefaultEntityResolver.<init>:()V
            putfield org.apache.commons.configuration2.XMLConfiguration.entityResolver:Lorg/xml/sax/EntityResolver;
         2: .line 251
            aload 0 /* this */
            new org.apache.commons.configuration2.io.ConfigurationLogger
            dup
            ldc Lorg/apache/commons/configuration2/XMLConfiguration;
            invokespecial org.apache.commons.configuration2.io.ConfigurationLogger.<init>:(Ljava/lang/Class;)V
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.initLogger:(Lorg/apache/commons/configuration2/io/ConfigurationLogger;)V
         3: .line 252
            return
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  public void <init>(org.apache.commons.configuration2.HierarchicalConfiguration<org.apache.commons.configuration2.tree.ImmutableNode>);
    descriptor: (Lorg/apache/commons/configuration2/HierarchicalConfiguration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.apache.commons.configuration2.HierarchicalConfiguration c
         0: .line 266
            aload 0 /* this */
            aload 1 /* c */
            invokespecial org.apache.commons.configuration2.BaseHierarchicalConfiguration.<init>:(Lorg/apache/commons/configuration2/HierarchicalConfiguration;)V
         1: .line 240
            aload 0 /* this */
            new org.apache.commons.configuration2.resolver.DefaultEntityResolver
            dup
            invokespecial org.apache.commons.configuration2.resolver.DefaultEntityResolver.<init>:()V
            putfield org.apache.commons.configuration2.XMLConfiguration.entityResolver:Lorg/xml/sax/EntityResolver;
         2: .line 267
            aload 0 /* this */
         3: .line 268
            aload 1 /* c */
            ifnull 4
            aload 1 /* c */
            invokeinterface org.apache.commons.configuration2.HierarchicalConfiguration.getRootElementName:()Ljava/lang/String;
            goto 5
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.HierarchicalConfiguration
      StackMap stack: org.apache.commons.configuration2.XMLConfiguration
         4: aconst_null
         5: .line 267
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.HierarchicalConfiguration
      StackMap stack: org.apache.commons.configuration2.XMLConfiguration java.lang.String
            putfield org.apache.commons.configuration2.XMLConfiguration.rootElementName:Ljava/lang/String;
         6: .line 269
            aload 0 /* this */
            new org.apache.commons.configuration2.io.ConfigurationLogger
            dup
            ldc Lorg/apache/commons/configuration2/XMLConfiguration;
            invokespecial org.apache.commons.configuration2.io.ConfigurationLogger.<init>:(Ljava/lang/Class;)V
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.initLogger:(Lorg/apache/commons/configuration2/io/ConfigurationLogger;)V
         7: .line 270
            return
        end local 1 // org.apache.commons.configuration2.HierarchicalConfiguration c
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    8     1     c  Lorg/apache/commons/configuration2/HierarchicalConfiguration<Lorg/apache/commons/configuration2/tree/ImmutableNode;>;
    Signature: (Lorg/apache/commons/configuration2/HierarchicalConfiguration<Lorg/apache/commons/configuration2/tree/ImmutableNode;>;)V
    MethodParameters:
      Name  Flags
      c     final

  protected java.lang.String getRootElementNameInternal();
    descriptor: ()Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 283
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocument:()Lorg/w3c/dom/Document;
            astore 1 /* doc */
        start local 1 // org.w3c.dom.Document doc
         1: .line 284
            aload 1 /* doc */
            ifnonnull 5
         2: .line 286
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.rootElementName:Ljava/lang/String;
            ifnonnull 3
            ldc "configuration"
            goto 4
      StackMap locals: org.w3c.dom.Document
      StackMap stack:
         3: aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.rootElementName:Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: areturn
         5: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* doc */
            invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
            invokeinterface org.w3c.dom.Element.getNodeName:()Ljava/lang/String;
            areturn
        end local 1 // org.w3c.dom.Document doc
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            1    6     1   doc  Lorg/w3c/dom/Document;

  public void setRootElementName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.lang.String name
         0: .line 305
            aload 0 /* this */
            iconst_1
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginRead:(Z)V
         1: .line 308
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocument:()Lorg/w3c/dom/Document;
            ifnull 5
         2: .line 310
            new java.lang.UnsupportedOperationException
            dup
         3: .line 311
            ldc "The name of the root element cannot be changed when loaded from an XML document!"
         4: .line 310
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            putfield org.apache.commons.configuration2.XMLConfiguration.rootElementName:Ljava/lang/String;
         6: .line 315
            goto 10
         7: .line 317
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         8: .line 318
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
         9: .line 319
            aload 2
            athrow
        10: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
        11: .line 320
            return
        end local 1 // java.lang.String name
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   12     1  name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     7       7  any
    MethodParameters:
      Name  Flags
      name  final

  public javax.xml.parsers.DocumentBuilder getDocumentBuilder();
    descriptor: ()Ljavax/xml/parsers/DocumentBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 332
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.documentBuilder:Ljavax/xml/parsers/DocumentBuilder;
            areturn
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  public void setDocumentBuilder(javax.xml.parsers.DocumentBuilder);
    descriptor: (Ljavax/xml/parsers/DocumentBuilder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // javax.xml.parsers.DocumentBuilder documentBuilder
         0: .line 347
            aload 0 /* this */
            aload 1 /* documentBuilder */
            putfield org.apache.commons.configuration2.XMLConfiguration.documentBuilder:Ljavax/xml/parsers/DocumentBuilder;
         1: .line 348
            return
        end local 1 // javax.xml.parsers.DocumentBuilder documentBuilder
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1  documentBuilder  Ljavax/xml/parsers/DocumentBuilder;
    MethodParameters:
                 Name  Flags
      documentBuilder  final

  public java.lang.String getPublicID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 360
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginRead:(Z)V
         1: .line 363
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.publicID:Ljava/lang/String;
            astore 2
         2: .line 367
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
         3: .line 363
            aload 2
            areturn
         4: .line 366
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1
         5: .line 367
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
         6: .line 368
            aload 1
            athrow
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
      Exception table:
        from    to  target  type
           1     2       4  any

  public void setPublicID(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.lang.String publicID
         0: .line 381
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginWrite:(Z)V
         1: .line 384
            aload 0 /* this */
            aload 1 /* publicID */
            putfield org.apache.commons.configuration2.XMLConfiguration.publicID:Ljava/lang/String;
         2: .line 385
            goto 6
         3: .line 387
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         4: .line 388
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
         5: .line 389
            aload 2
            athrow
         6: .line 388
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
         7: .line 390
            return
        end local 1 // java.lang.String publicID
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    8     1  publicID  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     3       3  any
    MethodParameters:
          Name  Flags
      publicID  final

  public java.lang.String getSystemID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 402
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginRead:(Z)V
         1: .line 405
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.systemID:Ljava/lang/String;
            astore 2
         2: .line 409
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
         3: .line 405
            aload 2
            areturn
         4: .line 408
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1
         5: .line 409
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endRead:()V
         6: .line 410
            aload 1
            athrow
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
      Exception table:
        from    to  target  type
           1     2       4  any

  public void setSystemID(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.lang.String systemID
         0: .line 423
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginWrite:(Z)V
         1: .line 426
            aload 0 /* this */
            aload 1 /* systemID */
            putfield org.apache.commons.configuration2.XMLConfiguration.systemID:Ljava/lang/String;
         2: .line 427
            goto 6
         3: .line 429
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         4: .line 430
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
         5: .line 431
            aload 2
            athrow
         6: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
         7: .line 432
            return
        end local 1 // java.lang.String systemID
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    8     1  systemID  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     3       3  any
    MethodParameters:
          Name  Flags
      systemID  final

  public boolean isValidating();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 442
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.validating:Z
            ireturn
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  public void setValidating(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // boolean validating
         0: .line 455
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.schemaValidation:Z
            ifne 2
         1: .line 457
            aload 0 /* this */
            iload 1 /* validating */
            putfield org.apache.commons.configuration2.XMLConfiguration.validating:Z
         2: .line 459
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean validating
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    3     1  validating  Z
    MethodParameters:
            Name  Flags
      validating  final

  public boolean isSchemaValidation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 470
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.schemaValidation:Z
            ireturn
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  public void setSchemaValidation(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // boolean schemaValidation
         0: .line 485
            aload 0 /* this */
            iload 1 /* schemaValidation */
            putfield org.apache.commons.configuration2.XMLConfiguration.schemaValidation:Z
         1: .line 486
            iload 1 /* schemaValidation */
            ifeq 3
         2: .line 488
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.configuration2.XMLConfiguration.validating:Z
         3: .line 490
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean schemaValidation
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    4     1  schemaValidation  Z
    MethodParameters:
                  Name  Flags
      schemaValidation  final

  public void setEntityResolver(org.xml.sax.EntityResolver);
    descriptor: (Lorg/xml/sax/EntityResolver;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.xml.sax.EntityResolver resolver
         0: .line 500
            aload 0 /* this */
            aload 1 /* resolver */
            putfield org.apache.commons.configuration2.XMLConfiguration.entityResolver:Lorg/xml/sax/EntityResolver;
         1: .line 501
            return
        end local 1 // org.xml.sax.EntityResolver resolver
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1  resolver  Lorg/xml/sax/EntityResolver;
    MethodParameters:
          Name  Flags
      resolver  final

  public org.xml.sax.EntityResolver getEntityResolver();
    descriptor: ()Lorg/xml/sax/EntityResolver;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 510
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.entityResolver:Lorg/xml/sax/EntityResolver;
            areturn
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  public org.w3c.dom.Document getDocument();
    descriptor: ()Lorg/w3c/dom/Document;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 522
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocumentHelper:()Lorg/apache/commons/configuration2/XMLDocumentHelper;
            astore 1 /* docHelper */
        start local 1 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
         1: .line 523
            aload 1 /* docHelper */
            ifnull 2
            aload 1 /* docHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getDocument:()Lorg/w3c/dom/Document;
            goto 3
      StackMap locals: org.apache.commons.configuration2.XMLDocumentHelper
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: org.w3c.dom.Document
         3: areturn
        end local 1 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/apache/commons/configuration2/XMLConfiguration;
            1    4     1  docHelper  Lorg/apache/commons/configuration2/XMLDocumentHelper;

  private org.apache.commons.configuration2.XMLDocumentHelper getDocumentHelper();
    descriptor: ()Lorg/apache/commons/configuration2/XMLDocumentHelper;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 533
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getReferenceHandler:()Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;
            astore 1 /* handler */
        start local 1 // org.apache.commons.configuration2.tree.ReferenceNodeHandler handler
         1: .line 534
            aload 1 /* handler */
            aload 1 /* handler */
            invokeinterface org.apache.commons.configuration2.tree.ReferenceNodeHandler.getRootNode:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.tree.ImmutableNode
            invokeinterface org.apache.commons.configuration2.tree.ReferenceNodeHandler.getReference:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.XMLDocumentHelper
            areturn
        end local 1 // org.apache.commons.configuration2.tree.ReferenceNodeHandler handler
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/apache/commons/configuration2/XMLConfiguration;
            1    2     1  handler  Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;

  private org.apache.commons.configuration2.tree.ReferenceNodeHandler getReferenceHandler();
    descriptor: ()Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 544
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getSubConfigurationParentModel:()Lorg/apache/commons/configuration2/tree/InMemoryNodeModel;
            invokevirtual org.apache.commons.configuration2.tree.InMemoryNodeModel.getReferenceNodeHandler:()Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;
            areturn
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;

  private void initProperties(org.apache.commons.configuration2.XMLDocumentHelper, boolean);
    descriptor: (Lorg/apache/commons/configuration2/XMLDocumentHelper;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=9, args_size=3
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
        start local 2 // boolean elemRefs
         0: .line 555
            aload 1 /* docHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getDocument:()Lorg/w3c/dom/Document;
            astore 3 /* document */
        start local 3 // org.w3c.dom.Document document
         1: .line 556
            aload 0 /* this */
            aload 1 /* docHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getSourcePublicID:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.setPublicID:(Ljava/lang/String;)V
         2: .line 557
            aload 0 /* this */
            aload 1 /* docHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getSourceSystemID:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.setSystemID:(Ljava/lang/String;)V
         3: .line 559
            new org.apache.commons.configuration2.tree.ImmutableNode$Builder
            dup
            invokespecial org.apache.commons.configuration2.tree.ImmutableNode$Builder.<init>:()V
            astore 4 /* rootBuilder */
        start local 4 // org.apache.commons.configuration2.tree.ImmutableNode$Builder rootBuilder
         4: .line 560
            new org.apache.commons.lang3.mutable.MutableObject
            dup
            invokespecial org.apache.commons.lang3.mutable.MutableObject.<init>:()V
            astore 5 /* rootValue */
        start local 5 // org.apache.commons.lang3.mutable.MutableObject rootValue
         5: .line 562
            iload 2 /* elemRefs */
            ifeq 6
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            goto 7
      StackMap locals: org.w3c.dom.Document org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject
      StackMap stack:
         6: aconst_null
         7: .line 561
      StackMap locals:
      StackMap stack: java.util.HashMap
            astore 6 /* elemRefMap */
        start local 6 // java.util.Map elemRefMap
         8: .line 564
            aload 0 /* this */
            aload 4 /* rootBuilder */
            aload 5 /* rootValue */
         9: .line 565
            aload 3 /* document */
            invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
            aload 6 /* elemRefMap */
            iconst_1
            iconst_0
        10: .line 564
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.constructHierarchy:(Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/w3c/dom/Element;Ljava/util/Map;ZI)Ljava/util/Map;
        11: .line 563
            astore 7 /* attributes */
        start local 7 // java.util.Map attributes
        12: .line 566
            aload 7 /* attributes */
            ldc "config-xml:space"
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 568
            aload 4 /* rootBuilder */
            aload 5 /* rootValue */
            invokevirtual org.apache.commons.lang3.mutable.MutableObject.getValue:()Ljava/lang/Object;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.value:(Ljava/lang/Object;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
        14: .line 569
            aload 7 /* attributes */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addAttributes:(Ljava/util/Map;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.create:()Lorg/apache/commons/configuration2/tree/ImmutableNode;
        15: .line 567
            astore 8 /* top */
        start local 8 // org.apache.commons.configuration2.tree.ImmutableNode top
        16: .line 570
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getSubConfigurationParentModel:()Lorg/apache/commons/configuration2/tree/InMemoryNodeModel;
            aload 8 /* top */
        17: .line 571
            aload 3 /* document */
            invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            aload 6 /* elemRefMap */
        18: .line 572
            iload 2 /* elemRefs */
            ifeq 19
            aload 1 /* docHelper */
            goto 20
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.XMLDocumentHelper int org.w3c.dom.Document org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject java.util.Map java.util.Map org.apache.commons.configuration2.tree.ImmutableNode
      StackMap stack: org.apache.commons.configuration2.tree.InMemoryNodeModel org.apache.commons.configuration2.tree.ImmutableNode java.lang.String java.util.Map
        19: aconst_null
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.XMLDocumentHelper int org.w3c.dom.Document org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject java.util.Map java.util.Map org.apache.commons.configuration2.tree.ImmutableNode
      StackMap stack: org.apache.commons.configuration2.tree.InMemoryNodeModel org.apache.commons.configuration2.tree.ImmutableNode java.lang.String java.util.Map org.apache.commons.configuration2.XMLDocumentHelper
        20: aload 0 /* this */
        21: .line 570
            invokevirtual org.apache.commons.configuration2.tree.InMemoryNodeModel.mergeRoot:(Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/String;Ljava/util/Map;Ljava/lang/Object;Lorg/apache/commons/configuration2/tree/NodeKeyResolver;)V
        22: .line 573
            return
        end local 8 // org.apache.commons.configuration2.tree.ImmutableNode top
        end local 7 // java.util.Map attributes
        end local 6 // java.util.Map elemRefMap
        end local 5 // org.apache.commons.lang3.mutable.MutableObject rootValue
        end local 4 // org.apache.commons.configuration2.tree.ImmutableNode$Builder rootBuilder
        end local 3 // org.w3c.dom.Document document
        end local 2 // boolean elemRefs
        end local 1 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   23     0         this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   23     1    docHelper  Lorg/apache/commons/configuration2/XMLDocumentHelper;
            0   23     2     elemRefs  Z
            1   23     3     document  Lorg/w3c/dom/Document;
            4   23     4  rootBuilder  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            5   23     5    rootValue  Lorg/apache/commons/lang3/mutable/MutableObject<Ljava/lang/String;>;
            8   23     6   elemRefMap  Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;
           12   23     7   attributes  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           16   23     8          top  Lorg/apache/commons/configuration2/tree/ImmutableNode;
    MethodParameters:
           Name  Flags
      docHelper  final
      elemRefs   final

  private java.util.Map<java.lang.String, java.lang.String> constructHierarchy(org.apache.commons.configuration2.tree.ImmutableNode$Builder, org.apache.commons.lang3.mutable.MutableObject<java.lang.String>, org.w3c.dom.Element, java.util.Map<org.apache.commons.configuration2.tree.ImmutableNode, java.lang.Object>, boolean, int);
    descriptor: (Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/w3c/dom/Element;Ljava/util/Map;ZI)Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=20, args_size=7
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.apache.commons.configuration2.tree.ImmutableNode$Builder node
        start local 2 // org.apache.commons.lang3.mutable.MutableObject refValue
        start local 3 // org.w3c.dom.Element element
        start local 4 // java.util.Map elemRefs
        start local 5 // boolean trim
        start local 6 // int level
         0: .line 595
            aload 3 /* element */
            iload 5 /* trim */
            invokestatic org.apache.commons.configuration2.XMLConfiguration.shouldTrim:(Lorg/w3c/dom/Element;Z)Z
            istore 7 /* trimFlag */
        start local 7 // boolean trimFlag
         1: .line 596
            aload 3 /* element */
            invokestatic org.apache.commons.configuration2.XMLConfiguration.processAttributes:(Lorg/w3c/dom/Element;)Ljava/util/Map;
            astore 8 /* attributes */
        start local 8 // java.util.Map attributes
         2: .line 597
            aload 8 /* attributes */
            ldc "config-xml:space"
            iload 7 /* trimFlag */
            invokestatic java.lang.String.valueOf:(Z)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 598
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 9 /* buffer */
        start local 9 // java.lang.StringBuilder buffer
         4: .line 599
            aload 3 /* element */
            invokeinterface org.w3c.dom.Element.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 10 /* list */
        start local 10 // org.w3c.dom.NodeList list
         5: .line 600
            iconst_0
            istore 11 /* hasChildren */
        start local 11 // boolean hasChildren
         6: .line 602
            iconst_0
            istore 12 /* i */
        start local 12 // int i
         7: goto 34
         8: .line 604
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject org.w3c.dom.Element java.util.Map int int int java.util.Map java.lang.StringBuilder org.w3c.dom.NodeList int int
      StackMap stack:
            aload 10 /* list */
            iload 12 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 13 /* w3cNode */
        start local 13 // org.w3c.dom.Node w3cNode
         9: .line 605
            aload 13 /* w3cNode */
            instanceof org.w3c.dom.Element
            ifeq 30
        10: .line 607
            aload 13 /* w3cNode */
            checkcast org.w3c.dom.Element
            astore 14 /* child */
        start local 14 // org.w3c.dom.Element child
        11: .line 608
            new org.apache.commons.configuration2.tree.ImmutableNode$Builder
            dup
            invokespecial org.apache.commons.configuration2.tree.ImmutableNode$Builder.<init>:()V
            astore 15 /* childNode */
        start local 15 // org.apache.commons.configuration2.tree.ImmutableNode$Builder childNode
        12: .line 609
            aload 15 /* childNode */
            aload 14 /* child */
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.name:(Ljava/lang/String;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        13: .line 611
            new org.apache.commons.lang3.mutable.MutableObject
            dup
            invokespecial org.apache.commons.lang3.mutable.MutableObject.<init>:()V
        14: .line 610
            astore 16 /* refChildValue */
        start local 16 // org.apache.commons.lang3.mutable.MutableObject refChildValue
        15: .line 613
            aload 0 /* this */
            aload 15 /* childNode */
            aload 16 /* refChildValue */
            aload 14 /* child */
        16: .line 614
            aload 4 /* elemRefs */
            iload 7 /* trimFlag */
            iload 6 /* level */
            iconst_1
            iadd
        17: .line 613
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.constructHierarchy:(Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/w3c/dom/Element;Ljava/util/Map;ZI)Ljava/util/Map;
        18: .line 612
            astore 17 /* attrmap */
        start local 17 // java.util.Map attrmap
        19: .line 615
            aload 17 /* attrmap */
            ldc "config-xml:space"
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
            astore 18 /* childTrim */
        start local 18 // java.lang.Boolean childTrim
        20: .line 616
            aload 15 /* childNode */
            aload 17 /* attrmap */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addAttributes:(Ljava/util/Map;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        21: .line 618
            aload 0 /* this */
            aload 1 /* node */
            aload 15 /* childNode */
            aload 14 /* child */
        22: .line 619
            aload 16 /* refChildValue */
            invokevirtual org.apache.commons.lang3.mutable.MutableObject.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
        23: .line 620
            aload 18 /* childTrim */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            aload 17 /* attrmap */
            aload 4 /* elemRefs */
        24: .line 618
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createChildNodeWithValue:(Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/w3c/dom/Element;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)Lorg/apache/commons/configuration2/tree/ImmutableNode;
        25: .line 617
            astore 19 /* newChild */
        start local 19 // org.apache.commons.configuration2.tree.ImmutableNode newChild
        26: .line 621
            aload 4 /* elemRefs */
            ifnull 28
            aload 4 /* elemRefs */
            aload 19 /* newChild */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 28
        27: .line 623
            aload 4 /* elemRefs */
            aload 19 /* newChild */
            aload 14 /* child */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        28: .line 625
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject org.w3c.dom.Element java.util.Map int int int java.util.Map java.lang.StringBuilder org.w3c.dom.NodeList int int org.w3c.dom.Node org.w3c.dom.Element org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject java.util.Map java.lang.Boolean org.apache.commons.configuration2.tree.ImmutableNode
      StackMap stack:
            iconst_1
            istore 11 /* hasChildren */
        end local 19 // org.apache.commons.configuration2.tree.ImmutableNode newChild
        end local 18 // java.lang.Boolean childTrim
        end local 17 // java.util.Map attrmap
        end local 16 // org.apache.commons.lang3.mutable.MutableObject refChildValue
        end local 15 // org.apache.commons.configuration2.tree.ImmutableNode$Builder childNode
        end local 14 // org.w3c.dom.Element child
        29: .line 626
            goto 33
        30: .line 627
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject org.w3c.dom.Element java.util.Map int int int java.util.Map java.lang.StringBuilder org.w3c.dom.NodeList int int org.w3c.dom.Node
      StackMap stack:
            aload 13 /* w3cNode */
            instanceof org.w3c.dom.Text
            ifeq 33
        31: .line 629
            aload 13 /* w3cNode */
            checkcast org.w3c.dom.Text
            astore 14 /* data */
        start local 14 // org.w3c.dom.Text data
        32: .line 630
            aload 9 /* buffer */
            aload 14 /* data */
            invokeinterface org.w3c.dom.Text.getData:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 14 // org.w3c.dom.Text data
        end local 13 // org.w3c.dom.Node w3cNode
        33: .line 602
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 12 /* i */
            aload 10 /* list */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 8
        end local 12 // int i
        35: .line 634
            iconst_0
            istore 12 /* childrenFlag */
        start local 12 // boolean childrenFlag
        36: .line 635
            iload 11 /* hasChildren */
            ifne 37
            iload 7 /* trimFlag */
            ifeq 40
        37: .line 637
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.lang3.mutable.MutableObject org.w3c.dom.Element java.util.Map int int int java.util.Map java.lang.StringBuilder org.w3c.dom.NodeList int int
      StackMap stack:
            iload 11 /* hasChildren */
            ifne 38
            aload 8 /* attributes */
            invokeinterface java.util.Map.size:()I
            iconst_1
            if_icmpgt 38
            iconst_0
            goto 39
      StackMap locals:
      StackMap stack:
        38: iconst_1
      StackMap locals:
      StackMap stack: int
        39: istore 12 /* childrenFlag */
        40: .line 639
      StackMap locals:
      StackMap stack:
            aload 9 /* buffer */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iload 12 /* childrenFlag */
            iload 7 /* trimFlag */
            invokestatic org.apache.commons.configuration2.XMLConfiguration.determineValue:(Ljava/lang/String;ZZ)Ljava/lang/String;
            astore 13 /* text */
        start local 13 // java.lang.String text
        41: .line 640
            aload 13 /* text */
            invokevirtual java.lang.String.length:()I
            ifgt 42
            iload 12 /* childrenFlag */
            ifne 43
            iload 6 /* level */
            ifeq 43
        42: .line 642
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* refValue */
            aload 13 /* text */
            invokevirtual org.apache.commons.lang3.mutable.MutableObject.setValue:(Ljava/lang/Object;)V
        43: .line 644
      StackMap locals:
      StackMap stack:
            aload 8 /* attributes */
            areturn
        end local 13 // java.lang.String text
        end local 12 // boolean childrenFlag
        end local 11 // boolean hasChildren
        end local 10 // org.w3c.dom.NodeList list
        end local 9 // java.lang.StringBuilder buffer
        end local 8 // java.util.Map attributes
        end local 7 // boolean trimFlag
        end local 6 // int level
        end local 5 // boolean trim
        end local 4 // java.util.Map elemRefs
        end local 3 // org.w3c.dom.Element element
        end local 2 // org.apache.commons.lang3.mutable.MutableObject refValue
        end local 1 // org.apache.commons.configuration2.tree.ImmutableNode$Builder node
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   44     0           this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   44     1           node  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            0   44     2       refValue  Lorg/apache/commons/lang3/mutable/MutableObject<Ljava/lang/String;>;
            0   44     3        element  Lorg/w3c/dom/Element;
            0   44     4       elemRefs  Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;
            0   44     5           trim  Z
            0   44     6          level  I
            1   44     7       trimFlag  Z
            2   44     8     attributes  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            4   44     9         buffer  Ljava/lang/StringBuilder;
            5   44    10           list  Lorg/w3c/dom/NodeList;
            6   44    11    hasChildren  Z
            7   35    12              i  I
            9   33    13        w3cNode  Lorg/w3c/dom/Node;
           11   29    14          child  Lorg/w3c/dom/Element;
           12   29    15      childNode  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
           15   29    16  refChildValue  Lorg/apache/commons/lang3/mutable/MutableObject<Ljava/lang/String;>;
           19   29    17        attrmap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
           20   29    18      childTrim  Ljava/lang/Boolean;
           26   29    19       newChild  Lorg/apache/commons/configuration2/tree/ImmutableNode;
           32   33    14           data  Lorg/w3c/dom/Text;
           36   44    12   childrenFlag  Z
           41   44    13           text  Ljava/lang/String;
    Signature: (Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/lang3/mutable/MutableObject<Ljava/lang/String;>;Lorg/w3c/dom/Element;Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;ZI)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    MethodParameters:
          Name  Flags
      node      final
      refValue  final
      element   final
      elemRefs  final
      trim      final
      level     final

  private static java.lang.String determineValue(java.lang.String, boolean, boolean);
    descriptor: (Ljava/lang/String;ZZ)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=4, args_size=3
        start local 0 // java.lang.String content
        start local 1 // boolean hasChildren
        start local 2 // boolean trimFlag
         0: .line 663
            iload 2 /* trimFlag */
            ifne 2
            aload 0 /* content */
            invokestatic org.apache.commons.lang3.StringUtils.isBlank:(Ljava/lang/CharSequence;)Z
            ifeq 1
            iload 1 /* hasChildren */
            ifne 2
         1: .line 662
      StackMap locals:
      StackMap stack:
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* shouldTrim */
        start local 3 // boolean shouldTrim
         4: .line 664
            iload 3 /* shouldTrim */
            ifeq 5
            aload 0 /* content */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            goto 6
      StackMap locals: int
      StackMap stack:
         5: aload 0 /* content */
      StackMap locals:
      StackMap stack: java.lang.String
         6: areturn
        end local 3 // boolean shouldTrim
        end local 2 // boolean trimFlag
        end local 1 // boolean hasChildren
        end local 0 // java.lang.String content
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      content  Ljava/lang/String;
            0    7     1  hasChildren  Z
            0    7     2     trimFlag  Z
            4    7     3   shouldTrim  Z
    MethodParameters:
             Name  Flags
      content      final
      hasChildren  final
      trimFlag     final

  private static java.util.Map<java.lang.String, java.lang.String> processAttributes(org.w3c.dom.Element);
    descriptor: (Lorg/w3c/dom/Element;)Ljava/util/Map;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.w3c.dom.Element element
         0: .line 676
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 1 /* attributes */
        start local 1 // org.w3c.dom.NamedNodeMap attributes
         1: .line 677
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* attrmap */
        start local 2 // java.util.Map attrmap
         2: .line 679
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 9
         4: .line 681
      StackMap locals: org.w3c.dom.NamedNodeMap java.util.Map int
      StackMap stack:
            aload 1 /* attributes */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NamedNodeMap.item:(I)Lorg/w3c/dom/Node;
            astore 4 /* w3cNode */
        start local 4 // org.w3c.dom.Node w3cNode
         5: .line 682
            aload 4 /* w3cNode */
            instanceof org.w3c.dom.Attr
            ifeq 8
         6: .line 684
            aload 4 /* w3cNode */
            checkcast org.w3c.dom.Attr
            astore 5 /* attr */
        start local 5 // org.w3c.dom.Attr attr
         7: .line 685
            aload 2 /* attrmap */
            aload 5 /* attr */
            invokeinterface org.w3c.dom.Attr.getName:()Ljava/lang/String;
            aload 5 /* attr */
            invokeinterface org.w3c.dom.Attr.getValue:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // org.w3c.dom.Attr attr
        end local 4 // org.w3c.dom.Node w3cNode
         8: .line 679
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 1 /* attributes */
            invokeinterface org.w3c.dom.NamedNodeMap.getLength:()I
            if_icmplt 4
        end local 3 // int i
        10: .line 689
            aload 2 /* attrmap */
            areturn
        end local 2 // java.util.Map attrmap
        end local 1 // org.w3c.dom.NamedNodeMap attributes
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0     element  Lorg/w3c/dom/Element;
            1   11     1  attributes  Lorg/w3c/dom/NamedNodeMap;
            2   11     2     attrmap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            3   10     3           i  I
            5    8     4     w3cNode  Lorg/w3c/dom/Node;
            7    8     5        attr  Lorg/w3c/dom/Attr;
    Signature: (Lorg/w3c/dom/Element;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    MethodParameters:
         Name  Flags
      element  final

  private org.apache.commons.configuration2.tree.ImmutableNode createChildNodeWithValue(org.apache.commons.configuration2.tree.ImmutableNode$Builder, org.apache.commons.configuration2.tree.ImmutableNode$Builder, org.w3c.dom.Element, java.lang.String, boolean, java.util.Map<java.lang.String, java.lang.String>, java.util.Map<org.apache.commons.configuration2.tree.ImmutableNode, java.lang.Object>);
    descriptor: (Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/w3c/dom/Element;Ljava/lang/String;ZLjava/util/Map;Ljava/util/Map;)Lorg/apache/commons/configuration2/tree/ImmutableNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=14, args_size=8
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.apache.commons.configuration2.tree.ImmutableNode$Builder parent
        start local 2 // org.apache.commons.configuration2.tree.ImmutableNode$Builder child
        start local 3 // org.w3c.dom.Element elem
        start local 4 // java.lang.String value
        start local 5 // boolean trim
        start local 6 // java.util.Map attrmap
        start local 7 // java.util.Map elemRefs
         0: .line 716
            aload 4 /* value */
            ifnull 3
         1: .line 718
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getListDelimiterHandler:()Lorg/apache/commons/configuration2/convert/ListDelimiterHandler;
            aload 4 /* value */
            iload 5 /* trim */
            invokeinterface org.apache.commons.configuration2.convert.ListDelimiterHandler.split:(Ljava/lang/String;Z)Ljava/util/Collection;
            astore 9 /* values */
        start local 9 // java.util.Collection values
         2: .line 719
            goto 4
        end local 9 // java.util.Collection values
         3: .line 722
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 9 /* values */
        start local 9 // java.util.Collection values
         4: .line 725
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.configuration2.tree.ImmutableNode$Builder org.w3c.dom.Element java.lang.String int java.util.Map java.util.Map top java.util.Collection
      StackMap stack:
            aload 9 /* values */
            invokeinterface java.util.Collection.size:()I
            iconst_1
            if_icmple 23
         5: .line 727
            aload 3 /* elem */
            invokestatic org.apache.commons.configuration2.XMLConfiguration.isSingleElementList:(Lorg/w3c/dom/Element;)Z
            ifeq 6
            aload 7 /* elemRefs */
            goto 7
      StackMap locals:
      StackMap stack:
         6: aconst_null
      StackMap locals:
      StackMap stack: java.util.Map
         7: astore 10 /* refs */
        start local 10 // java.util.Map refs
         8: .line 728
            aload 9 /* values */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 11 /* it */
        start local 11 // java.util.Iterator it
         9: .line 730
            aload 2 /* child */
            aload 11 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.value:(Ljava/lang/Object;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        10: .line 731
            aload 2 /* child */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.create:()Lorg/apache/commons/configuration2/tree/ImmutableNode;
            astore 8 /* addedChildNode */
        start local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        11: .line 732
            aload 1 /* parent */
            aload 8 /* addedChildNode */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addChild:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        12: .line 733
            aload 10 /* refs */
            aload 8 /* addedChildNode */
            aload 3 /* elem */
            invokestatic org.apache.commons.configuration2.XMLListReference.assignListReference:(Ljava/util/Map;Lorg/apache/commons/configuration2/tree/ImmutableNode;Lorg/w3c/dom/Element;)V
        13: .line 736
            goto 21
        14: .line 738
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.configuration2.tree.ImmutableNode$Builder org.w3c.dom.Element java.lang.String int java.util.Map java.util.Map org.apache.commons.configuration2.tree.ImmutableNode java.util.Collection java.util.Map java.util.Iterator
      StackMap stack:
            new org.apache.commons.configuration2.tree.ImmutableNode$Builder
            dup
            invokespecial org.apache.commons.configuration2.tree.ImmutableNode$Builder.<init>:()V
            astore 12 /* c */
        start local 12 // org.apache.commons.configuration2.tree.ImmutableNode$Builder c
        15: .line 739
            aload 12 /* c */
            aload 8 /* addedChildNode */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode.getNodeName:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.name:(Ljava/lang/String;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        16: .line 740
            aload 12 /* c */
            aload 11 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.value:(Ljava/lang/Object;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        17: .line 741
            aload 12 /* c */
            aload 6 /* attrmap */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addAttributes:(Ljava/util/Map;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        18: .line 742
            aload 12 /* c */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.create:()Lorg/apache/commons/configuration2/tree/ImmutableNode;
            astore 13 /* newChild */
        start local 13 // org.apache.commons.configuration2.tree.ImmutableNode newChild
        19: .line 743
            aload 1 /* parent */
            aload 13 /* newChild */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addChild:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        20: .line 744
            aload 10 /* refs */
            aload 13 /* newChild */
            aconst_null
            invokestatic org.apache.commons.configuration2.XMLListReference.assignListReference:(Ljava/util/Map;Lorg/apache/commons/configuration2/tree/ImmutableNode;Lorg/w3c/dom/Element;)V
        end local 13 // org.apache.commons.configuration2.tree.ImmutableNode newChild
        end local 12 // org.apache.commons.configuration2.tree.ImmutableNode$Builder c
        21: .line 736
      StackMap locals:
      StackMap stack:
            aload 11 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        end local 11 // java.util.Iterator it
        end local 10 // java.util.Map refs
        22: .line 746
            goto 30
        end local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        23: .line 747
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.configuration2.tree.ImmutableNode$Builder org.w3c.dom.Element java.lang.String int java.util.Map java.util.Map top java.util.Collection
      StackMap stack:
            aload 9 /* values */
            invokeinterface java.util.Collection.size:()I
            iconst_1
            if_icmpne 28
        24: .line 751
            aload 2 /* child */
            aload 9 /* values */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.value:(Ljava/lang/Object;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        25: .line 752
            aload 2 /* child */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.create:()Lorg/apache/commons/configuration2/tree/ImmutableNode;
            astore 8 /* addedChildNode */
        start local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        26: .line 753
            aload 1 /* parent */
            aload 8 /* addedChildNode */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addChild:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        27: .line 754
            goto 30
        end local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        28: .line 757
      StackMap locals:
      StackMap stack:
            aload 2 /* child */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.create:()Lorg/apache/commons/configuration2/tree/ImmutableNode;
            astore 8 /* addedChildNode */
        start local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        29: .line 758
            aload 1 /* parent */
            aload 8 /* addedChildNode */
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode$Builder.addChild:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            pop
        30: .line 761
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.tree.ImmutableNode$Builder org.apache.commons.configuration2.tree.ImmutableNode$Builder org.w3c.dom.Element java.lang.String int java.util.Map java.util.Map org.apache.commons.configuration2.tree.ImmutableNode java.util.Collection
      StackMap stack:
            aload 8 /* addedChildNode */
            areturn
        end local 9 // java.util.Collection values
        end local 8 // org.apache.commons.configuration2.tree.ImmutableNode addedChildNode
        end local 7 // java.util.Map elemRefs
        end local 6 // java.util.Map attrmap
        end local 5 // boolean trim
        end local 4 // java.lang.String value
        end local 3 // org.w3c.dom.Element elem
        end local 2 // org.apache.commons.configuration2.tree.ImmutableNode$Builder child
        end local 1 // org.apache.commons.configuration2.tree.ImmutableNode$Builder parent
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   31     0            this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   31     1          parent  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            0   31     2           child  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
            0   31     3            elem  Lorg/w3c/dom/Element;
            0   31     4           value  Ljava/lang/String;
            0   31     5            trim  Z
            0   31     6         attrmap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0   31     7        elemRefs  Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;
           11   23     8  addedChildNode  Lorg/apache/commons/configuration2/tree/ImmutableNode;
           26   28     8  addedChildNode  Lorg/apache/commons/configuration2/tree/ImmutableNode;
           29   31     8  addedChildNode  Lorg/apache/commons/configuration2/tree/ImmutableNode;
            2    3     9          values  Ljava/util/Collection<Ljava/lang/String;>;
            4   31     9          values  Ljava/util/Collection<Ljava/lang/String;>;
            8   22    10            refs  Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;
            9   22    11              it  Ljava/util/Iterator<Ljava/lang/String;>;
           15   21    12               c  Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;
           19   21    13        newChild  Lorg/apache/commons/configuration2/tree/ImmutableNode;
    Signature: (Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/apache/commons/configuration2/tree/ImmutableNode$Builder;Lorg/w3c/dom/Element;Ljava/lang/String;ZLjava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/util/Map<Lorg/apache/commons/configuration2/tree/ImmutableNode;Ljava/lang/Object;>;)Lorg/apache/commons/configuration2/tree/ImmutableNode;
    MethodParameters:
          Name  Flags
      parent    final
      child     final
      elem      final
      value     final
      trim      final
      attrmap   final
      elemRefs  final

  private static boolean isSingleElementList(org.w3c.dom.Element);
    descriptor: (Lorg/w3c/dom/Element;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.w3c.dom.Element element
         0: .line 773
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getParentNode:()Lorg/w3c/dom/Node;
            astore 1 /* parentNode */
        start local 1 // org.w3c.dom.Node parentNode
         1: .line 774
            aload 1 /* parentNode */
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            invokestatic org.apache.commons.configuration2.XMLConfiguration.countChildElements:(Lorg/w3c/dom/Node;Ljava/lang/String;)I
            iconst_1
            if_icmpne 2
            iconst_1
            ireturn
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // org.w3c.dom.Node parentNode
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0     element  Lorg/w3c/dom/Element;
            1    3     1  parentNode  Lorg/w3c/dom/Node;
    MethodParameters:
         Name  Flags
      element  final

  private static int countChildElements(org.w3c.dom.Node, java.lang.String);
    descriptor: (Lorg/w3c/dom/Node;Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.w3c.dom.Node parent
        start local 1 // java.lang.String name
         0: .line 787
            aload 0 /* parent */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 2 /* childNodes */
        start local 2 // org.w3c.dom.NodeList childNodes
         1: .line 788
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         2: .line 789
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 9
         4: .line 791
      StackMap locals: org.w3c.dom.NodeList int int
      StackMap stack:
            aload 2 /* childNodes */
            iload 4 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 5 /* item */
        start local 5 // org.w3c.dom.Node item
         5: .line 792
            aload 5 /* item */
            instanceof org.w3c.dom.Element
            ifeq 8
         6: .line 794
            aload 1 /* name */
            aload 5 /* item */
            checkcast org.w3c.dom.Element
            invokeinterface org.w3c.dom.Element.getTagName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 796
            iinc 3 /* count */ 1
        end local 5 // org.w3c.dom.Node item
         8: .line 789
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 2 /* childNodes */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 4
        end local 4 // int i
        10: .line 800
            iload 3 /* count */
            ireturn
        end local 3 // int count
        end local 2 // org.w3c.dom.NodeList childNodes
        end local 1 // java.lang.String name
        end local 0 // org.w3c.dom.Node parent
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0      parent  Lorg/w3c/dom/Node;
            0   11     1        name  Ljava/lang/String;
            1   11     2  childNodes  Lorg/w3c/dom/NodeList;
            2   11     3       count  I
            3   10     4           i  I
            5    8     5        item  Lorg/w3c/dom/Node;
    MethodParameters:
        Name  Flags
      parent  final
      name    final

  private static boolean shouldTrim(org.w3c.dom.Element, boolean);
    descriptor: (Lorg/w3c/dom/Element;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.w3c.dom.Element element
        start local 1 // boolean currentTrim
         0: .line 816
            aload 0 /* element */
            ldc "xml:space"
            invokeinterface org.w3c.dom.Element.getAttributeNode:(Ljava/lang/String;)Lorg/w3c/dom/Attr;
            astore 2 /* attr */
        start local 2 // org.w3c.dom.Attr attr
         1: .line 818
            aload 2 /* attr */
            ifnonnull 3
         2: .line 820
            iload 1 /* currentTrim */
            ireturn
         3: .line 822
      StackMap locals: org.w3c.dom.Attr
      StackMap stack:
            ldc "preserve"
            aload 2 /* attr */
            invokeinterface org.w3c.dom.Attr.getValue:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: ireturn
        end local 2 // org.w3c.dom.Attr attr
        end local 1 // boolean currentTrim
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0      element  Lorg/w3c/dom/Element;
            0    6     1  currentTrim  Z
            1    6     2         attr  Lorg/w3c/dom/Attr;
    MethodParameters:
             Name  Flags
      element      final
      currentTrim  final

  protected javax.xml.parsers.DocumentBuilder createDocumentBuilder();
    descriptor: ()Ljavax/xml/parsers/DocumentBuilder;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 841
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
            ifnull 2
         1: .line 843
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
            areturn
         2: .line 846
      StackMap locals:
      StackMap stack:
            invokestatic javax.xml.parsers.DocumentBuilderFactory.newInstance:()Ljavax/xml/parsers/DocumentBuilderFactory;
         3: .line 845
            astore 1 /* factory */
        start local 1 // javax.xml.parsers.DocumentBuilderFactory factory
         4: .line 847
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.isValidating:()Z
            ifeq 9
         5: .line 849
            aload 1 /* factory */
            iconst_1
            invokevirtual javax.xml.parsers.DocumentBuilderFactory.setValidating:(Z)V
         6: .line 850
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.isSchemaValidation:()Z
            ifeq 9
         7: .line 852
            aload 1 /* factory */
            iconst_1
            invokevirtual javax.xml.parsers.DocumentBuilderFactory.setNamespaceAware:(Z)V
         8: .line 853
            aload 1 /* factory */
            ldc "http://java.sun.com/xml/jaxp/properties/schemaLanguage"
            ldc "http://www.w3.org/2001/XMLSchema"
            invokevirtual javax.xml.parsers.DocumentBuilderFactory.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
         9: .line 857
      StackMap locals: javax.xml.parsers.DocumentBuilderFactory
      StackMap stack:
            aload 1 /* factory */
            invokevirtual javax.xml.parsers.DocumentBuilderFactory.newDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
            astore 2 /* result */
        start local 2 // javax.xml.parsers.DocumentBuilder result
        10: .line 858
            aload 2 /* result */
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.entityResolver:Lorg/xml/sax/EntityResolver;
            invokevirtual javax.xml.parsers.DocumentBuilder.setEntityResolver:(Lorg/xml/sax/EntityResolver;)V
        11: .line 860
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.isValidating:()Z
            ifeq 13
        12: .line 863
            aload 2 /* result */
            new org.apache.commons.configuration2.XMLConfiguration$1
            dup
            aload 0 /* this */
            invokespecial org.apache.commons.configuration2.XMLConfiguration$1.<init>:(Lorg/apache/commons/configuration2/XMLConfiguration;)V
            invokevirtual javax.xml.parsers.DocumentBuilder.setErrorHandler:(Lorg/xml/sax/ErrorHandler;)V
        13: .line 872
      StackMap locals: javax.xml.parsers.DocumentBuilder
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // javax.xml.parsers.DocumentBuilder result
        end local 1 // javax.xml.parsers.DocumentBuilderFactory factory
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/apache/commons/configuration2/XMLConfiguration;
            4   14     1  factory  Ljavax/xml/parsers/DocumentBuilderFactory;
           10   14     2   result  Ljavax/xml/parsers/DocumentBuilder;
    Exceptions:
      throws javax.xml.parsers.ParserConfigurationException

  protected javax.xml.transform.Transformer createTransformer();
    descriptor: ()Ljavax/xml/transform/Transformer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 887
            invokestatic org.apache.commons.configuration2.XMLDocumentHelper.createTransformer:()Ljavax/xml/transform/Transformer;
            astore 1 /* transformer */
        start local 1 // javax.xml.transform.Transformer transformer
         1: .line 889
            aload 1 /* transformer */
            ldc "indent"
            ldc "yes"
            invokevirtual javax.xml.transform.Transformer.setOutputProperty:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 890
            aload 1 /* transformer */
            ldc "{http://xml.apache.org/xslt}indent-amount"
            iconst_2
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokevirtual javax.xml.transform.Transformer.setOutputProperty:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 891
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
            ifnull 5
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            ifnull 5
         4: .line 893
            aload 1 /* transformer */
            ldc "encoding"
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getEncoding:()Ljava/lang/String;
            invokevirtual javax.xml.transform.Transformer.setOutputProperty:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 895
      StackMap locals: javax.xml.transform.Transformer
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.publicID:Ljava/lang/String;
            ifnull 7
         6: .line 897
            aload 1 /* transformer */
            ldc "doctype-public"
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.publicID:Ljava/lang/String;
            invokevirtual javax.xml.transform.Transformer.setOutputProperty:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 899
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.systemID:Ljava/lang/String;
            ifnull 9
         8: .line 901
            aload 1 /* transformer */
            ldc "doctype-system"
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.systemID:Ljava/lang/String;
            invokevirtual javax.xml.transform.Transformer.setOutputProperty:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 904
      StackMap locals:
      StackMap stack:
            aload 1 /* transformer */
            areturn
        end local 1 // javax.xml.transform.Transformer transformer
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/apache/commons/configuration2/XMLConfiguration;
            1   10     1  transformer  Ljavax/xml/transform/Transformer;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  private org.w3c.dom.Document createDocument();
    descriptor: ()Lorg/w3c/dom/Document;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 915
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getReferenceHandler:()Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;
            astore 1 /* handler */
        start local 1 // org.apache.commons.configuration2.tree.ReferenceNodeHandler handler
         1: .line 917
            aload 1 /* handler */
            aload 1 /* handler */
            invokeinterface org.apache.commons.configuration2.tree.ReferenceNodeHandler.getRootNode:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.tree.ImmutableNode
            invokeinterface org.apache.commons.configuration2.tree.ReferenceNodeHandler.getReference:(Lorg/apache/commons/configuration2/tree/ImmutableNode;)Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.XMLDocumentHelper
         2: .line 916
            astore 2 /* docHelper */
        start local 2 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
         3: .line 919
            aload 2 /* docHelper */
            ifnonnull 5
         4: .line 920
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getRootElementName:()Ljava/lang/String;
            invokestatic org.apache.commons.configuration2.XMLDocumentHelper.forNewDocument:(Ljava/lang/String;)Lorg/apache/commons/configuration2/XMLDocumentHelper;
            goto 7
      StackMap locals: org.apache.commons.configuration2.tree.ReferenceNodeHandler org.apache.commons.configuration2.XMLDocumentHelper
      StackMap stack:
         5: aload 2 /* docHelper */
         6: .line 921
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.createCopy:()Lorg/apache/commons/configuration2/XMLDocumentHelper;
         7: .line 918
      StackMap locals:
      StackMap stack: org.apache.commons.configuration2.XMLDocumentHelper
            astore 3 /* newHelper */
        start local 3 // org.apache.commons.configuration2.XMLDocumentHelper newHelper
         8: .line 924
            new org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor
            dup
            aload 3 /* newHelper */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getListDelimiterHandler:()Lorg/apache/commons/configuration2/convert/ListDelimiterHandler;
            invokespecial org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor.<init>:(Lorg/apache/commons/configuration2/XMLDocumentHelper;Lorg/apache/commons/configuration2/convert/ListDelimiterHandler;)V
         9: .line 923
            astore 4 /* builder */
        start local 4 // org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor builder
        10: .line 925
            aload 4 /* builder */
            aload 1 /* handler */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor.handleRemovedNodes:(Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;)V
        11: .line 926
            aload 4 /* builder */
            aload 1 /* handler */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor.processDocument:(Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;)V
        12: .line 927
            aload 0 /* this */
            aload 3 /* newHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getDocument:()Lorg/w3c/dom/Document;
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getModel:()Lorg/apache/commons/configuration2/tree/NodeModel;
        13: .line 928
            invokeinterface org.apache.commons.configuration2.tree.NodeModel.getNodeHandler:()Lorg/apache/commons/configuration2/tree/NodeHandler;
            invokeinterface org.apache.commons.configuration2.tree.NodeHandler.getRootNode:()Ljava/lang/Object;
            checkcast org.apache.commons.configuration2.tree.ImmutableNode
            invokevirtual org.apache.commons.configuration2.tree.ImmutableNode.getValue:()Ljava/lang/Object;
        14: .line 927
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.initRootElementText:(Lorg/w3c/dom/Document;Ljava/lang/Object;)V
        15: .line 929
            aload 3 /* newHelper */
            invokevirtual org.apache.commons.configuration2.XMLDocumentHelper.getDocument:()Lorg/w3c/dom/Document;
            areturn
        end local 4 // org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor builder
        end local 3 // org.apache.commons.configuration2.XMLDocumentHelper newHelper
        end local 2 // org.apache.commons.configuration2.XMLDocumentHelper docHelper
        end local 1 // org.apache.commons.configuration2.tree.ReferenceNodeHandler handler
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/apache/commons/configuration2/XMLConfiguration;
            1   16     1    handler  Lorg/apache/commons/configuration2/tree/ReferenceNodeHandler;
            3   16     2  docHelper  Lorg/apache/commons/configuration2/XMLDocumentHelper;
            8   16     3  newHelper  Lorg/apache/commons/configuration2/XMLDocumentHelper;
           10   16     4    builder  Lorg/apache/commons/configuration2/XMLConfiguration$XMLBuilderVisitor;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException

  private void initRootElementText(org.w3c.dom.Document, java.lang.Object);
    descriptor: (Lorg/w3c/dom/Document;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.w3c.dom.Document doc
        start local 2 // java.lang.Object value
         0: .line 940
            aload 1 /* doc */
            invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
            astore 3 /* elem */
        start local 3 // org.w3c.dom.Element elem
         1: .line 941
            aload 3 /* elem */
            invokeinterface org.w3c.dom.Element.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 4 /* children */
        start local 4 // org.w3c.dom.NodeList children
         2: .line 944
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 8
         4: .line 946
      StackMap locals: org.w3c.dom.Element org.w3c.dom.NodeList int
      StackMap stack:
            aload 4 /* children */
            iload 5 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 6 /* nd */
        start local 6 // org.w3c.dom.Node nd
         5: .line 947
            aload 6 /* nd */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            iconst_3
            if_icmpne 7
         6: .line 949
            aload 3 /* elem */
            aload 6 /* nd */
            invokeinterface org.w3c.dom.Element.removeChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 6 // org.w3c.dom.Node nd
         7: .line 944
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            aload 4 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 4
        end local 5 // int i
         9: .line 953
            aload 2 /* value */
            ifnull 11
        10: .line 956
            aload 3 /* elem */
            aload 1 /* doc */
            aload 2 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.w3c.dom.Document.createTextNode:(Ljava/lang/String;)Lorg/w3c/dom/Text;
            invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        11: .line 958
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.w3c.dom.NodeList children
        end local 3 // org.w3c.dom.Element elem
        end local 2 // java.lang.Object value
        end local 1 // org.w3c.dom.Document doc
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   12     1       doc  Lorg/w3c/dom/Document;
            0   12     2     value  Ljava/lang/Object;
            1   12     3      elem  Lorg/w3c/dom/Element;
            2   12     4  children  Lorg/w3c/dom/NodeList;
            3    9     5         i  I
            5    7     6        nd  Lorg/w3c/dom/Node;
    MethodParameters:
       Name  Flags
      doc    final
      value  final

  public void initFileLocator(org.apache.commons.configuration2.io.FileLocator);
    descriptor: (Lorg/apache/commons/configuration2/io/FileLocator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.apache.commons.configuration2.io.FileLocator loc
         0: .line 966
            aload 0 /* this */
            aload 1 /* loc */
            putfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
         1: .line 967
            return
        end local 1 // org.apache.commons.configuration2.io.FileLocator loc
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1   loc  Lorg/apache/commons/configuration2/io/FileLocator;
    MethodParameters:
      Name  Flags
      loc   final

  public void read(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.io.Reader in
         0: .line 982
            aload 0 /* this */
            new org.xml.sax.InputSource
            dup
            aload 1 /* in */
            invokespecial org.xml.sax.InputSource.<init>:(Ljava/io/Reader;)V
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.load:(Lorg/xml/sax/InputSource;)V
         1: .line 983
            return
        end local 1 // java.io.Reader in
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1    in  Ljava/io/Reader;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException, java.io.IOException
    MethodParameters:
      Name  Flags
      in    final

  public void read(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.io.InputStream in
         0: .line 999
            aload 0 /* this */
            new org.xml.sax.InputSource
            dup
            aload 1 /* in */
            invokespecial org.xml.sax.InputSource.<init>:(Ljava/io/InputStream;)V
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.load:(Lorg/xml/sax/InputSource;)V
         1: .line 1000
            return
        end local 1 // java.io.InputStream in
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1    in  Ljava/io/InputStream;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException, java.io.IOException
    MethodParameters:
      Name  Flags
      in    final

  private void load(org.xml.sax.InputSource);
    descriptor: (Lorg/xml/sax/InputSource;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // org.xml.sax.InputSource source
         0: .line 1010
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
            ifnonnull 2
         1: .line 1012
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "Load operation not properly initialized! Do not call read(InputStream) directly, but use a FileHandler to load a configuration."
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1019
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration2.XMLConfiguration.locator:Lorg/apache/commons/configuration2/io/FileLocator;
            invokevirtual org.apache.commons.configuration2.io.FileLocator.getSourceURL:()Ljava/net/URL;
            astore 2 /* sourceURL */
        start local 2 // java.net.URL sourceURL
         3: .line 1020
            aload 2 /* sourceURL */
            ifnull 5
         4: .line 1022
            aload 1 /* source */
            aload 2 /* sourceURL */
            invokevirtual java.net.URL.toString:()Ljava/lang/String;
            invokevirtual org.xml.sax.InputSource.setSystemId:(Ljava/lang/String;)V
         5: .line 1025
      StackMap locals: java.net.URL
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
            astore 3 /* builder */
        start local 3 // javax.xml.parsers.DocumentBuilder builder
         6: .line 1026
            aload 3 /* builder */
            aload 1 /* source */
            invokevirtual javax.xml.parsers.DocumentBuilder.parse:(Lorg/xml/sax/InputSource;)Lorg/w3c/dom/Document;
            astore 4 /* newDocument */
        start local 4 // org.w3c.dom.Document newDocument
         7: .line 1027
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getDocument:()Lorg/w3c/dom/Document;
            astore 5 /* oldDocument */
        start local 5 // org.w3c.dom.Document oldDocument
         8: .line 1028
            aload 0 /* this */
            aload 4 /* newDocument */
            invokestatic org.apache.commons.configuration2.XMLDocumentHelper.forSourceDocument:(Lorg/w3c/dom/Document;)Lorg/apache/commons/configuration2/XMLDocumentHelper;
         9: .line 1029
            aload 5 /* oldDocument */
            ifnonnull 10
            iconst_1
            goto 11
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.xml.sax.InputSource java.net.URL javax.xml.parsers.DocumentBuilder org.w3c.dom.Document org.w3c.dom.Document
      StackMap stack: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.XMLDocumentHelper
        10: iconst_0
        11: .line 1028
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.xml.sax.InputSource java.net.URL javax.xml.parsers.DocumentBuilder org.w3c.dom.Document org.w3c.dom.Document
      StackMap stack: org.apache.commons.configuration2.XMLConfiguration org.apache.commons.configuration2.XMLDocumentHelper int
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.initProperties:(Lorg/apache/commons/configuration2/XMLDocumentHelper;Z)V
        end local 5 // org.w3c.dom.Document oldDocument
        end local 4 // org.w3c.dom.Document newDocument
        end local 3 // javax.xml.parsers.DocumentBuilder builder
        end local 2 // java.net.URL sourceURL
        12: .line 1030
            goto 18
        13: .line 1031
      StackMap locals: org.apache.commons.configuration2.XMLConfiguration org.xml.sax.InputSource
      StackMap stack: org.xml.sax.SAXParseException
            astore 2 /* spe */
        start local 2 // org.xml.sax.SAXParseException spe
        14: .line 1033
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Error parsing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* source */
            invokevirtual org.xml.sax.InputSource.getSystemId:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* spe */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // org.xml.sax.SAXParseException spe
        15: .line 1035
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* e */
        start local 2 // java.lang.Exception e
        16: .line 1037
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.getLogger:()Lorg/apache/commons/configuration2/io/ConfigurationLogger;
            new java.lang.StringBuilder
            dup
            ldc "Unable to load the configuration: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* e */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.apache.commons.configuration2.io.ConfigurationLogger.debug:(Ljava/lang/String;)V
        17: .line 1038
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "Unable to load the configuration"
            aload 2 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception e
        18: .line 1040
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.xml.sax.InputSource source
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0   19     1       source  Lorg/xml/sax/InputSource;
            3   12     2    sourceURL  Ljava/net/URL;
            6   12     3      builder  Ljavax/xml/parsers/DocumentBuilder;
            7   12     4  newDocument  Lorg/w3c/dom/Document;
            8   12     5  oldDocument  Lorg/w3c/dom/Document;
           14   15     2          spe  Lorg/xml/sax/SAXParseException;
           16   18     2            e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2    12      13  Class org.xml.sax.SAXParseException
           2    12      15  Class java.lang.Exception
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
        Name  Flags
      source  final

  public void write(java.io.Writer);
    descriptor: (Ljava/io/Writer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.io.Writer writer
         0: .line 1052
            aload 0 /* this */
            aload 1 /* writer */
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createTransformer:()Ljavax/xml/transform/Transformer;
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.write:(Ljava/io/Writer;Ljavax/xml/transform/Transformer;)V
         1: .line 1053
            return
        end local 1 // java.io.Writer writer
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    2     1  writer  Ljava/io/Writer;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException, java.io.IOException
    MethodParameters:
        Name  Flags
      writer  final

  public void write(java.io.Writer, javax.xml.transform.Transformer);
    descriptor: (Ljava/io/Writer;Ljavax/xml/transform/Transformer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
        start local 1 // java.io.Writer writer
        start local 2 // javax.xml.transform.Transformer transformer
         0: .line 1065
            new javax.xml.transform.dom.DOMSource
            dup
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createDocument:()Lorg/w3c/dom/Document;
            invokespecial javax.xml.transform.dom.DOMSource.<init>:(Lorg/w3c/dom/Node;)V
            astore 3 /* source */
        start local 3 // javax.xml.transform.Source source
         1: .line 1066
            new javax.xml.transform.stream.StreamResult
            dup
            aload 1 /* writer */
            invokespecial javax.xml.transform.stream.StreamResult.<init>:(Ljava/io/Writer;)V
            astore 4 /* result */
        start local 4 // javax.xml.transform.Result result
         2: .line 1067
            aload 2 /* transformer */
            aload 3 /* source */
            aload 4 /* result */
            invokestatic org.apache.commons.configuration2.XMLDocumentHelper.transform:(Ljavax/xml/transform/Transformer;Ljavax/xml/transform/Source;Ljavax/xml/transform/Result;)V
         3: .line 1068
            return
        end local 4 // javax.xml.transform.Result result
        end local 3 // javax.xml.transform.Source source
        end local 2 // javax.xml.transform.Transformer transformer
        end local 1 // java.io.Writer writer
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/commons/configuration2/XMLConfiguration;
            0    4     1       writer  Ljava/io/Writer;
            0    4     2  transformer  Ljavax/xml/transform/Transformer;
            1    4     3       source  Ljavax/xml/transform/Source;
            2    4     4       result  Ljavax/xml/transform/Result;
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
    MethodParameters:
             Name  Flags
      writer       final
      transformer  final

  public void validate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // org.apache.commons.configuration2.XMLConfiguration this
         0: .line 1076
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.beginWrite:(Z)V
         1: .line 1079
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createTransformer:()Ljavax/xml/transform/Transformer;
            astore 1 /* transformer */
        start local 1 // javax.xml.transform.Transformer transformer
         2: .line 1080
            new javax.xml.transform.dom.DOMSource
            dup
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createDocument:()Lorg/w3c/dom/Document;
            invokespecial javax.xml.transform.dom.DOMSource.<init>:(Lorg/w3c/dom/Node;)V
            astore 2 /* source */
        start local 2 // javax.xml.transform.Source source
         3: .line 1081
            new java.io.StringWriter
            dup
            invokespecial java.io.StringWriter.<init>:()V
            astore 3 /* writer */
        start local 3 // java.io.StringWriter writer
         4: .line 1082
            new javax.xml.transform.stream.StreamResult
            dup
            aload 3 /* writer */
            invokespecial javax.xml.transform.stream.StreamResult.<init>:(Ljava/io/Writer;)V
            astore 4 /* result */
        start local 4 // javax.xml.transform.Result result
         5: .line 1083
            aload 1 /* transformer */
            aload 2 /* source */
            aload 4 /* result */
            invokestatic org.apache.commons.configuration2.XMLDocumentHelper.transform:(Ljavax/xml/transform/Transformer;Ljavax/xml/transform/Source;Ljavax/xml/transform/Result;)V
         6: .line 1084
            new java.io.StringReader
            dup
            aload 3 /* writer */
            invokevirtual java.io.StringWriter.getBuffer:()Ljava/lang/StringBuffer;
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            astore 5 /* reader */
        start local 5 // java.io.Reader reader
         7: .line 1085
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.createDocumentBuilder:()Ljavax/xml/parsers/DocumentBuilder;
            astore 6 /* builder */
        start local 6 // javax.xml.parsers.DocumentBuilder builder
         8: .line 1086
            aload 6 /* builder */
            new org.xml.sax.InputSource
            dup
            aload 5 /* reader */
            invokespecial org.xml.sax.InputSource.<init>:(Ljava/io/Reader;)V
            invokevirtual javax.xml.parsers.DocumentBuilder.parse:(Lorg/xml/sax/InputSource;)Lorg/w3c/dom/Document;
            pop
        end local 6 // javax.xml.parsers.DocumentBuilder builder
        end local 5 // java.io.Reader reader
        end local 4 // javax.xml.transform.Result result
        end local 3 // java.io.StringWriter writer
        end local 2 // javax.xml.transform.Source source
        end local 1 // javax.xml.transform.Transformer transformer
         9: .line 1087
            goto 19
        10: .line 1088
      StackMap locals:
      StackMap stack: org.xml.sax.SAXException
            astore 1 /* e */
        start local 1 // org.xml.sax.SAXException e
        11: .line 1090
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "Validation failed"
            aload 1 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // org.xml.sax.SAXException e
        12: .line 1092
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
        13: .line 1094
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "Validation failed"
            aload 1 /* e */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.IOException e
        14: .line 1096
      StackMap locals:
      StackMap stack: javax.xml.parsers.ParserConfigurationException
            astore 1 /* pce */
        start local 1 // javax.xml.parsers.ParserConfigurationException pce
        15: .line 1098
            new org.apache.commons.configuration2.ex.ConfigurationException
            dup
            ldc "Validation failed"
            aload 1 /* pce */
            invokespecial org.apache.commons.configuration2.ex.ConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // javax.xml.parsers.ParserConfigurationException pce
        16: .line 1101
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        17: .line 1102
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
        18: .line 1103
            aload 7
            athrow
        19: .line 1102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration2.XMLConfiguration.endWrite:()V
        20: .line 1104
            return
        end local 0 // org.apache.commons.configuration2.XMLConfiguration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Lorg/apache/commons/configuration2/XMLConfiguration;
            2    9     1  transformer  Ljavax/xml/transform/Transformer;
            3    9     2       source  Ljavax/xml/transform/Source;
            4    9     3       writer  Ljava/io/StringWriter;
            5    9     4       result  Ljavax/xml/transform/Result;
            7    9     5       reader  Ljava/io/Reader;
            8    9     6      builder  Ljavax/xml/parsers/DocumentBuilder;
           11   12     1            e  Lorg/xml/sax/SAXException;
           13   14     1            e  Ljava/io/IOException;
           15   16     1          pce  Ljavax/xml/parsers/ParserConfigurationException;
      Exception table:
        from    to  target  type
           1     9      10  Class org.xml.sax.SAXException
           1     9      12  Class java.io.IOException
           1     9      14  Class javax.xml.parsers.ParserConfigurationException
           1    16      16  any
    Exceptions:
      throws org.apache.commons.configuration2.ex.ConfigurationException
}
SourceFile: "XMLConfiguration.java"
NestMembers:
  org.apache.commons.configuration2.XMLConfiguration$1  org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor
InnerClasses:
  org.apache.commons.configuration2.XMLConfiguration$1
  XMLBuilderVisitor = org.apache.commons.configuration2.XMLConfiguration$XMLBuilderVisitor of org.apache.commons.configuration2.XMLConfiguration
  public final Builder = org.apache.commons.configuration2.tree.ImmutableNode$Builder of org.apache.commons.configuration2.tree.ImmutableNode