public final class org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder implements org.apache.logging.log4j.core.util.Builder<org.apache.logging.log4j.core.Appender>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder
  super_class: java.lang.Object
{
  private org.apache.logging.log4j.core.appender.AppenderSet appenderSet;
    descriptor: Lorg/apache/logging/log4j/core/appender/AppenderSet;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.apache.logging.log4j.core.config.plugins.PluginElement(value = "AppenderSet")
      org.apache.logging.log4j.core.config.plugins.validation.constraints.Required()

  private org.apache.logging.log4j.core.config.Configuration configuration;
    descriptor: Lorg/apache/logging/log4j/core/config/Configuration;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.apache.logging.log4j.core.config.plugins.PluginConfiguration()
      org.apache.logging.log4j.core.config.plugins.validation.constraints.Required()

  private java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.apache.logging.log4j.core.config.plugins.PluginBuilderAttribute()
      org.apache.logging.log4j.core.config.plugins.validation.constraints.Required()

  private org.apache.logging.log4j.core.script.AbstractScript script;
    descriptor: Lorg/apache/logging/log4j/core/script/AbstractScript;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.apache.logging.log4j.core.config.plugins.PluginElement(value = "Script")
      org.apache.logging.log4j.core.config.plugins.validation.constraints.Required()

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;

  public org.apache.logging.log4j.core.Appender build();
    descriptor: ()Lorg/apache/logging/log4j/core/Appender;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 66
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            ifnonnull 3
         1: .line 67
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "Name missing."
            invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;)V
         2: .line 68
            aconst_null
            areturn
         3: .line 70
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            ifnonnull 6
         4: .line 71
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "Script missing for ScriptAppenderSelector appender {}"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 72
            aconst_null
            areturn
         6: .line 74
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.appenderSet:Lorg/apache/logging/log4j/core/appender/AppenderSet;
            ifnonnull 9
         7: .line 75
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "AppenderSet missing for ScriptAppenderSelector appender {}"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;)V
         8: .line 76
            aconst_null
            areturn
         9: .line 78
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            ifnonnull 12
        10: .line 79
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "Configuration missing for ScriptAppenderSelector appender {}"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;)V
        11: .line 80
            aconst_null
            areturn
        12: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            invokeinterface org.apache.logging.log4j.core.config.Configuration.getScriptManager:()Lorg/apache/logging/log4j/core/script/ScriptManager;
            astore 1 /* scriptManager */
        start local 1 // org.apache.logging.log4j.core.script.ScriptManager scriptManager
        13: .line 83
            aload 1 /* scriptManager */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.ScriptManager.addScript:(Lorg/apache/logging/log4j/core/script/AbstractScript;)V
        14: .line 84
            aload 1 /* scriptManager */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.ScriptManager.createBindings:(Lorg/apache/logging/log4j/core/script/AbstractScript;)Ljavax/script/Bindings;
            astore 2 /* bindings */
        start local 2 // javax.script.Bindings bindings
        15: .line 85
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "ScriptAppenderSelector '{}' executing {} '{}': {}"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.AbstractScript.getLanguage:()Ljava/lang/String;
        16: .line 86
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.AbstractScript.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.AbstractScript.getScriptText:()Ljava/lang/String;
        17: .line 85
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        18: .line 87
            aload 1 /* scriptManager */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            invokevirtual org.apache.logging.log4j.core.script.AbstractScript.getName:()Ljava/lang/String;
            aload 2 /* bindings */
            invokevirtual org.apache.logging.log4j.core.script.ScriptManager.execute:(Ljava/lang/String;Ljavax/script/Bindings;)Ljava/lang/Object;
            astore 3 /* object */
        start local 3 // java.lang.Object object
        19: .line 88
            aload 3 /* object */
            aconst_null
            invokestatic java.util.Objects.toString:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* actualAppenderName */
        start local 4 // java.lang.String actualAppenderName
        20: .line 89
            invokestatic org.apache.logging.log4j.core.appender.ScriptAppenderSelector.access$0:()Lorg/apache/logging/log4j/Logger;
            ldc "ScriptAppenderSelector '{}' selected '{}'"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            aload 4 /* actualAppenderName */
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        21: .line 90
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.appenderSet:Lorg/apache/logging/log4j/core/appender/AppenderSet;
            aload 4 /* actualAppenderName */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            invokevirtual org.apache.logging.log4j.core.appender.AppenderSet.createAppender:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/logging/log4j/core/Appender;
            areturn
        end local 4 // java.lang.String actualAppenderName
        end local 3 // java.lang.Object object
        end local 2 // javax.script.Bindings bindings
        end local 1 // org.apache.logging.log4j.core.script.ScriptManager scriptManager
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   22     0                this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
           13   22     1       scriptManager  Lorg/apache/logging/log4j/core/script/ScriptManager;
           15   22     2            bindings  Ljavax/script/Bindings;
           19   22     3              object  Ljava/lang/Object;
           20   22     4  actualAppenderName  Ljava/lang/String;

  public org.apache.logging.log4j.core.appender.AppenderSet getAppenderSet();
    descriptor: ()Lorg/apache/logging/log4j/core/appender/AppenderSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 94
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.appenderSet:Lorg/apache/logging/log4j/core/appender/AppenderSet;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;

  public org.apache.logging.log4j.core.config.Configuration getConfiguration();
    descriptor: ()Lorg/apache/logging/log4j/core/config/Configuration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 98
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 102
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;

  public org.apache.logging.log4j.core.script.AbstractScript getScript();
    descriptor: ()Lorg/apache/logging/log4j/core/script/AbstractScript;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
         0: .line 106
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;

  public org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder withAppenderNodeSet(org.apache.logging.log4j.core.appender.AppenderSet);
    descriptor: (Lorg/apache/logging/log4j/core/appender/AppenderSet;)Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
        start local 1 // org.apache.logging.log4j.core.appender.AppenderSet appenderSet
         0: .line 110
            aload 0 /* this */
            aload 1 /* appenderSet */
            putfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.appenderSet:Lorg/apache/logging/log4j/core/appender/AppenderSet;
         1: .line 111
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.appender.AppenderSet appenderSet
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
            0    2     1  appenderSet  Lorg/apache/logging/log4j/core/appender/AppenderSet;
    MethodParameters:
             Name  Flags
      appenderSet  final

  public org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder withConfiguration(org.apache.logging.log4j.core.config.Configuration);
    descriptor: (Lorg/apache/logging/log4j/core/config/Configuration;)Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
        start local 1 // org.apache.logging.log4j.core.config.Configuration configuration
         0: .line 115
            aload 0 /* this */
            aload 1 /* configuration */
            putfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
         1: .line 116
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.config.Configuration configuration
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
            0    2     1  configuration  Lorg/apache/logging/log4j/core/config/Configuration;
    MethodParameters:
               Name  Flags
      configuration  final

  public org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder withName(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
        start local 1 // java.lang.String name
         0: .line 120
            aload 0 /* this */
            aload 1 /* name */
            putfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.name:Ljava/lang/String;
         1: .line 121
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  public org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder withScript(org.apache.logging.log4j.core.script.AbstractScript);
    descriptor: (Lorg/apache/logging/log4j/core/script/AbstractScript;)Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
        start local 1 // org.apache.logging.log4j.core.script.AbstractScript script
         0: .line 125
            aload 0 /* this */
            aload 1 /* script */
            putfield org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.script:Lorg/apache/logging/log4j/core/script/AbstractScript;
         1: .line 126
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.script.AbstractScript script
        end local 0 // org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/logging/log4j/core/appender/ScriptAppenderSelector$Builder;
            0    2     1  script  Lorg/apache/logging/log4j/core/script/AbstractScript;
    MethodParameters:
        Name  Flags
      script  final

  public java.lang.Object build();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder.build:()Lorg/apache/logging/log4j/core/Appender;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Ljava/lang/Object;Lorg/apache/logging/log4j/core/util/Builder<Lorg/apache/logging/log4j/core/Appender;>;
SourceFile: "ScriptAppenderSelector.java"
NestHost: org.apache.logging.log4j.core.appender.ScriptAppenderSelector
InnerClasses:
  public final Builder = org.apache.logging.log4j.core.appender.ScriptAppenderSelector$Builder of org.apache.logging.log4j.core.appender.ScriptAppenderSelector