public class org.apache.logging.log4j.core.lookup.StrSubstitutor implements org.apache.logging.log4j.core.config.ConfigurationAware
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.logging.log4j.core.lookup.StrSubstitutor
  super_class: java.lang.Object
{
  public static final char DEFAULT_ESCAPE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 36

  public static final org.apache.logging.log4j.core.lookup.StrMatcher DEFAULT_PREFIX;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.logging.log4j.core.lookup.StrMatcher DEFAULT_SUFFIX;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.apache.logging.log4j.core.lookup.StrMatcher DEFAULT_VALUE_DELIMITER;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final int BUF_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 256

  private char escapeChar;
    descriptor: C
    flags: (0x0002) ACC_PRIVATE

  private org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.logging.log4j.core.lookup.StrLookup variableResolver;
    descriptor: Lorg/apache/logging/log4j/core/lookup/StrLookup;
    flags: (0x0002) ACC_PRIVATE

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

  private org.apache.logging.log4j.core.config.Configuration configuration;
    descriptor: Lorg/apache/logging/log4j/core/config/Configuration;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 151
            ldc "${"
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            putstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_PREFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         1: .line 156
            ldc "}"
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            putstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_SUFFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         2: .line 161
            ldc ":-"
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            putstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_VALUE_DELIMITER:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         3: .line 163
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 206
            aload 0 /* this */
            aconst_null
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_PREFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_SUFFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            bipush 36
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;C)V
         1: .line 207
            return
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public void <init>(java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.util.Map valueMap
         0: .line 216
            aload 0 /* this */
            new org.apache.logging.log4j.core.lookup.MapLookup
            dup
            aload 1 /* valueMap */
            invokespecial org.apache.logging.log4j.core.lookup.MapLookup.<init>:(Ljava/util/Map;)V
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_PREFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_SUFFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            bipush 36
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;C)V
         1: .line 217
            return
        end local 1 // java.util.Map valueMap
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
    MethodParameters:
          Name  Flags
      valueMap  final

  public void <init>(java.util.Map<java.lang.String, java.lang.String>, java.lang.String, java.lang.String);
    descriptor: (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.util.Map valueMap
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
         0: .line 228
            aload 0 /* this */
            new org.apache.logging.log4j.core.lookup.MapLookup
            dup
            aload 1 /* valueMap */
            invokespecial org.apache.logging.log4j.core.lookup.MapLookup.<init>:(Ljava/util/Map;)V
            aload 2 /* prefix */
            aload 3 /* suffix */
            bipush 36
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Ljava/lang/String;Ljava/lang/String;C)V
         1: .line 229
            return
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // java.util.Map valueMap
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    2     2    prefix  Ljava/lang/String;
            0    2     3    suffix  Ljava/lang/String;
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;Ljava/lang/String;)V
    MethodParameters:
          Name  Flags
      valueMap  final
      prefix    final
      suffix    final

  public void <init>(java.util.Map<java.lang.String, java.lang.String>, java.lang.String, java.lang.String, );
    descriptor: (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.util.Map valueMap
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
        start local 4 // char escape
         0: .line 242
            aload 0 /* this */
            new org.apache.logging.log4j.core.lookup.MapLookup
            dup
            aload 1 /* valueMap */
            invokespecial org.apache.logging.log4j.core.lookup.MapLookup.<init>:(Ljava/util/Map;)V
            aload 2 /* prefix */
            aload 3 /* suffix */
            iload 4 /* escape */
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Ljava/lang/String;Ljava/lang/String;C)V
         1: .line 243
            return
        end local 4 // char escape
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // java.util.Map valueMap
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    2     2    prefix  Ljava/lang/String;
            0    2     3    suffix  Ljava/lang/String;
            0    2     4    escape  C
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;Ljava/lang/String;C)V
    MethodParameters:
          Name  Flags
      valueMap  final
      prefix    final
      suffix    final
      escape    final

  public void <init>(java.util.Map<java.lang.String, java.lang.String>, java.lang.String, java.lang.String, char, java.lang.String);
    descriptor: (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;CLjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.util.Map valueMap
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
        start local 4 // char escape
        start local 5 // java.lang.String valueDelimiter
         0: .line 257
            aload 0 /* this */
            new org.apache.logging.log4j.core.lookup.MapLookup
            dup
            aload 1 /* valueMap */
            invokespecial org.apache.logging.log4j.core.lookup.MapLookup.<init>:(Ljava/util/Map;)V
            aload 2 /* prefix */
            aload 3 /* suffix */
            iload 4 /* escape */
            aload 5 /* valueDelimiter */
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Ljava/lang/String;Ljava/lang/String;CLjava/lang/String;)V
         1: .line 258
            return
        end local 5 // java.lang.String valueDelimiter
        end local 4 // char escape
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // java.util.Map valueMap
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1        valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    2     2          prefix  Ljava/lang/String;
            0    2     3          suffix  Ljava/lang/String;
            0    2     4          escape  C
            0    2     5  valueDelimiter  Ljava/lang/String;
    Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;Ljava/lang/String;CLjava/lang/String;)V
    MethodParameters:
                Name  Flags
      valueMap        final
      prefix          final
      suffix          final
      escape          final
      valueDelimiter  final

  public void <init>(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.util.Properties properties
         0: .line 267
            aload 0 /* this */
            aload 1 /* properties */
            invokestatic org.apache.logging.log4j.core.lookup.StrSubstitutor.toTypeSafeMap:(Ljava/util/Properties;)Ljava/util/Map;
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Ljava/util/Map;)V
         1: .line 268
            return
        end local 1 // java.util.Properties properties
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  properties  Ljava/util/Properties;
    MethodParameters:
            Name  Flags
      properties  final

  public void <init>(org.apache.logging.log4j.core.lookup.StrLookup);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
         0: .line 276
            aload 0 /* this */
            aload 1 /* variableResolver */
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_PREFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_SUFFIX:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            bipush 36
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;C)V
         1: .line 277
            return
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
    MethodParameters:
                  Name  Flags
      variableResolver  final

  public void <init>(org.apache.logging.log4j.core.lookup.StrLookup, java.lang.String, java.lang.String, char);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;Ljava/lang/String;Ljava/lang/String;C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
        start local 4 // char escape
         0: .line 288
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 193
            aload 0 /* this */
            iconst_1
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.enableSubstitutionInVariables:Z
         2: .line 290
            aload 0 /* this */
            aload 1 /* variableResolver */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableResolver:(Lorg/apache/logging/log4j/core/lookup/StrLookup;)V
         3: .line 291
            aload 0 /* this */
            aload 2 /* prefix */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariablePrefix:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         4: .line 292
            aload 0 /* this */
            aload 3 /* suffix */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableSuffix:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         5: .line 293
            aload 0 /* this */
            iload 4 /* escape */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setEscapeChar:(C)V
         6: .line 294
            return
        end local 4 // char escape
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    7     0              this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    7     1  variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
            0    7     2            prefix  Ljava/lang/String;
            0    7     3            suffix  Ljava/lang/String;
            0    7     4            escape  C
    MethodParameters:
                  Name  Flags
      variableResolver  final
      prefix            final
      suffix            final
      escape            final

  public void <init>(org.apache.logging.log4j.core.lookup.StrLookup, java.lang.String, java.lang.String, char, java.lang.String);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;Ljava/lang/String;Ljava/lang/String;CLjava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
        start local 4 // char escape
        start local 5 // java.lang.String valueDelimiter
         0: .line 306
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 193
            aload 0 /* this */
            iconst_1
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.enableSubstitutionInVariables:Z
         2: .line 307
            aload 0 /* this */
            aload 1 /* variableResolver */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableResolver:(Lorg/apache/logging/log4j/core/lookup/StrLookup;)V
         3: .line 308
            aload 0 /* this */
            aload 2 /* prefix */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariablePrefix:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         4: .line 309
            aload 0 /* this */
            aload 3 /* suffix */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableSuffix:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         5: .line 310
            aload 0 /* this */
            iload 4 /* escape */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setEscapeChar:(C)V
         6: .line 311
            aload 0 /* this */
            aload 5 /* valueDelimiter */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setValueDelimiter:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         7: .line 312
            return
        end local 5 // java.lang.String valueDelimiter
        end local 4 // char escape
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    8     1  variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
            0    8     2            prefix  Ljava/lang/String;
            0    8     3            suffix  Ljava/lang/String;
            0    8     4            escape  C
            0    8     5    valueDelimiter  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      variableResolver  final
      prefix            final
      suffix            final
      escape            final
      valueDelimiter    final

  public void <init>(org.apache.logging.log4j.core.lookup.StrLookup, org.apache.logging.log4j.core.lookup.StrMatcher, org.apache.logging.log4j.core.lookup.StrMatcher, char);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        start local 2 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        start local 3 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        start local 4 // char escape
         0: .line 326
            aload 0 /* this */
            aload 1 /* variableResolver */
            aload 2 /* prefixMatcher */
            aload 3 /* suffixMatcher */
            iload 4 /* escape */
            getstatic org.apache.logging.log4j.core.lookup.StrSubstitutor.DEFAULT_VALUE_DELIMITER:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;CLorg/apache/logging/log4j/core/lookup/StrMatcher;)V
         1: .line 327
            return
        end local 4 // char escape
        end local 3 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        end local 2 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
            0    2     2     prefixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            0    2     3     suffixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            0    2     4            escape  C
    MethodParameters:
                  Name  Flags
      variableResolver  final
      prefixMatcher     final
      suffixMatcher     final
      escape            final

  public void <init>(org.apache.logging.log4j.core.lookup.StrLookup, org.apache.logging.log4j.core.lookup.StrMatcher, org.apache.logging.log4j.core.lookup.StrMatcher, char, org.apache.logging.log4j.core.lookup.StrMatcher);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;Lorg/apache/logging/log4j/core/lookup/StrMatcher;Lorg/apache/logging/log4j/core/lookup/StrMatcher;CLorg/apache/logging/log4j/core/lookup/StrMatcher;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=6
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        start local 2 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        start local 3 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        start local 4 // char escape
        start local 5 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
         0: .line 339
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 193
            aload 0 /* this */
            iconst_1
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.enableSubstitutionInVariables:Z
         2: .line 341
            aload 0 /* this */
            aload 1 /* variableResolver */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableResolver:(Lorg/apache/logging/log4j/core/lookup/StrLookup;)V
         3: .line 342
            aload 0 /* this */
            aload 2 /* prefixMatcher */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariablePrefixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         4: .line 343
            aload 0 /* this */
            aload 3 /* suffixMatcher */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableSuffixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         5: .line 344
            aload 0 /* this */
            iload 4 /* escape */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setEscapeChar:(C)V
         6: .line 345
            aload 0 /* this */
            aload 5 /* valueDelimiterMatcher */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setValueDelimiterMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         7: .line 346
            return
        end local 5 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
        end local 4 // char escape
        end local 3 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        end local 2 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    8     0                   this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    8     1       variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
            0    8     2          prefixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            0    8     3          suffixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            0    8     4                 escape  C
            0    8     5  valueDelimiterMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    MethodParameters:
                       Name  Flags
      variableResolver       final
      prefixMatcher          final
      suffixMatcher          final
      escape                 final
      valueDelimiterMatcher  final

  public static java.lang.String replace(, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/lang/Object;Ljava/util/Map;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.Object source
        start local 1 // java.util.Map valueMap
         0: .line 358
            new org.apache.logging.log4j.core.lookup.StrSubstitutor
            dup
            aload 1 /* valueMap */
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Ljava/util/Map;)V
            aload 0 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // java.util.Map valueMap
        end local 0 // java.lang.Object source
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0    source  Ljava/lang/Object;
            0    1     1  valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: (Ljava/lang/Object;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljava/lang/String;
    MethodParameters:
          Name  Flags
      source    final
      valueMap  final

  public static java.lang.String replace(, java.util.Map<java.lang.String, java.lang.String>, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.lang.Object source
        start local 1 // java.util.Map valueMap
        start local 2 // java.lang.String prefix
        start local 3 // java.lang.String suffix
         0: .line 375
            new org.apache.logging.log4j.core.lookup.StrSubstitutor
            dup
            aload 1 /* valueMap */
            aload 2 /* prefix */
            aload 3 /* suffix */
            invokespecial org.apache.logging.log4j.core.lookup.StrSubstitutor.<init>:(Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;)V
            aload 0 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 3 // java.lang.String suffix
        end local 2 // java.lang.String prefix
        end local 1 // java.util.Map valueMap
        end local 0 // java.lang.Object source
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0    source  Ljava/lang/Object;
            0    1     1  valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            0    1     2    prefix  Ljava/lang/String;
            0    1     3    suffix  Ljava/lang/String;
    Signature: (Ljava/lang/Object;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    MethodParameters:
          Name  Flags
      source    final
      valueMap  final
      prefix    final
      suffix    final

  public static java.lang.String replace(java.lang.Object, java.util.Properties);
    descriptor: (Ljava/lang/Object;Ljava/util/Properties;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // java.lang.Object source
        start local 1 // java.util.Properties valueProperties
         0: .line 387
            aload 1 /* valueProperties */
            ifnonnull 2
         1: .line 388
            aload 0 /* source */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
         2: .line 390
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* valueMap */
        start local 2 // java.util.Map valueMap
         3: .line 391
            aload 1 /* valueProperties */
            invokevirtual java.util.Properties.propertyNames:()Ljava/util/Enumeration;
            astore 3 /* propNames */
        start local 3 // java.util.Enumeration propNames
         4: .line 392
            goto 8
         5: .line 393
      StackMap locals: java.util.Map java.util.Enumeration
      StackMap stack:
            aload 3 /* propNames */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* propName */
        start local 4 // java.lang.String propName
         6: .line 394
            aload 1 /* valueProperties */
            aload 4 /* propName */
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* propValue */
        start local 5 // java.lang.String propValue
         7: .line 395
            aload 2 /* valueMap */
            aload 4 /* propName */
            aload 5 /* propValue */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.String propValue
        end local 4 // java.lang.String propName
         8: .line 392
      StackMap locals:
      StackMap stack:
            aload 3 /* propNames */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 5
         9: .line 397
            aload 0 /* source */
            aload 2 /* valueMap */
            invokestatic org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Ljava/lang/Object;Ljava/util/Map;)Ljava/lang/String;
            areturn
        end local 3 // java.util.Enumeration propNames
        end local 2 // java.util.Map valueMap
        end local 1 // java.util.Properties valueProperties
        end local 0 // java.lang.Object source
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0           source  Ljava/lang/Object;
            0   10     1  valueProperties  Ljava/util/Properties;
            3   10     2         valueMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            4   10     3        propNames  Ljava/util/Enumeration<*>;
            6    8     4         propName  Ljava/lang/String;
            7    8     5        propValue  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      source           final
      valueProperties  final

  private static java.util.Map<java.lang.String, java.lang.String> toTypeSafeMap(java.util.Properties);
    descriptor: (Ljava/util/Properties;)Ljava/util/Map;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.util.Properties properties
         0: .line 401
            new java.util.HashMap
            dup
            aload 0 /* properties */
            invokevirtual java.util.Properties.size:()I
            invokespecial java.util.HashMap.<init>:(I)V
            astore 1 /* map */
        start local 1 // java.util.Map map
         1: .line 402
            aload 0 /* properties */
            invokevirtual java.util.Properties.stringPropertyNames:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: java.util.Properties java.util.Map top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* name */
        start local 2 // java.lang.String name
         3: .line 403
            aload 1 /* map */
            aload 2 /* name */
            aload 0 /* properties */
            aload 2 /* name */
            invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // java.lang.String name
         4: .line 402
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 405
            aload 1 /* map */
            areturn
        end local 1 // java.util.Map map
        end local 0 // java.util.Properties properties
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0  properties  Ljava/util/Properties;
            1    6     1         map  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            3    4     2        name  Ljava/lang/String;
    Signature: (Ljava/util/Properties;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    MethodParameters:
            Name  Flags
      properties  final

  public java.lang.String replace(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String source
         0: .line 417
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      source  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.String);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.String source
         0: .line 429
            aload 2 /* source */
            ifnonnull 2
         1: .line 430
            aconst_null
            areturn
         2: .line 432
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* source */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 433
            aload 0 /* this */
            aload 1 /* event */
            aload 3 /* buf */
            iconst_0
            aload 2 /* source */
            invokevirtual java.lang.String.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ifne 5
         4: .line 434
            aload 2 /* source */
            areturn
         5: .line 436
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.String source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    6     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    6     2  source  Ljava/lang/String;
            3    6     3     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public java.lang.String replace(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String source
        start local 2 // int offset
        start local 3 // int length
         0: .line 453
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;II)Ljava/lang/String;
            areturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.lang.String source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/String;
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.String, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.String source
        start local 3 // int offset
        start local 4 // int length
         0: .line 471
            aload 2 /* source */
            ifnonnull 2
         1: .line 472
            aconst_null
            areturn
         2: .line 474
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         3: .line 475
            aload 0 /* this */
            aload 1 /* event */
            aload 5 /* buf */
            iconst_0
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ifne 5
         4: .line 476
            aload 2 /* source */
            iload 3 /* offset */
            iload 3 /* offset */
            iload 4 /* length */
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
         5: .line 478
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.String source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    6     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    6     2  source  Ljava/lang/String;
            0    6     3  offset  I
            0    6     4  length  I
            3    6     5     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  public java.lang.String replace(char[]);
    descriptor: ([C)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char[] source
         0: .line 491
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;[C)Ljava/lang/String;
            areturn
        end local 1 // char[] source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  [C
    MethodParameters:
        Name  Flags
      source  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, char[]);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;[C)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // char[] source
         0: .line 505
            aload 2 /* source */
            ifnonnull 2
         1: .line 506
            aconst_null
            areturn
         2: .line 508
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* source */
            arraylength
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.append:([C)Ljava/lang/StringBuilder;
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 509
            aload 0 /* this */
            aload 1 /* event */
            aload 3 /* buf */
            iconst_0
            aload 2 /* source */
            arraylength
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 510
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // char[] source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  [C
            3    5     3     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public java.lang.String replace(char[], int, int);
    descriptor: ([CII)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char[] source
        start local 2 // int offset
        start local 3 // int length
         0: .line 528
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;[CII)Ljava/lang/String;
            areturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // char[] source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  [C
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, char[], int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;[CII)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // char[] source
        start local 3 // int offset
        start local 4 // int length
         0: .line 547
            aload 2 /* source */
            ifnonnull 2
         1: .line 548
            aconst_null
            areturn
         2: .line 550
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual java.lang.StringBuilder.append:([CII)Ljava/lang/StringBuilder;
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         3: .line 551
            aload 0 /* this */
            aload 1 /* event */
            aload 5 /* buf */
            iconst_0
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 552
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // int offset
        end local 2 // char[] source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  [C
            0    5     3  offset  I
            0    5     4  length  I
            3    5     5     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  public java.lang.String replace(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuffer source
         0: .line 565
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuffer source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuffer;
    MethodParameters:
        Name  Flags
      source  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuffer);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuffer source
         0: .line 579
            aload 2 /* source */
            ifnonnull 2
         1: .line 580
            aconst_null
            areturn
         2: .line 582
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* source */
            invokevirtual java.lang.StringBuffer.length:()I
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/StringBuffer;)Ljava/lang/StringBuilder;
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 583
            aload 0 /* this */
            aload 1 /* event */
            aload 3 /* buf */
            iconst_0
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 584
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.StringBuffer source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  Ljava/lang/StringBuffer;
            3    5     3     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public java.lang.String replace(java.lang.StringBuffer, int, int);
    descriptor: (Ljava/lang/StringBuffer;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuffer source
        start local 2 // int offset
        start local 3 // int length
         0: .line 602
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;II)Ljava/lang/String;
            areturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.lang.StringBuffer source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuffer;
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuffer, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuffer source
        start local 3 // int offset
        start local 4 // int length
         0: .line 621
            aload 2 /* source */
            ifnonnull 2
         1: .line 622
            aconst_null
            areturn
         2: .line 624
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         3: .line 625
            aload 0 /* this */
            aload 1 /* event */
            aload 5 /* buf */
            iconst_0
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 626
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuffer source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  Ljava/lang/StringBuffer;
            0    5     3  offset  I
            0    5     4  length  I
            3    5     5     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  public java.lang.String replace(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder source
         0: .line 639
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      source  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder source
         0: .line 653
            aload 2 /* source */
            ifnonnull 2
         1: .line 654
            aconst_null
            areturn
         2: .line 656
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.length:()I
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 657
            aload 0 /* this */
            aload 1 /* event */
            aload 3 /* buf */
            iconst_0
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 658
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.StringBuilder source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  Ljava/lang/StringBuilder;
            3    5     3     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public java.lang.String replace(java.lang.StringBuilder, int, int);
    descriptor: (Ljava/lang/StringBuilder;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder source
        start local 2 // int offset
        start local 3 // int length
         0: .line 675
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Ljava/lang/String;
            areturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.lang.StringBuilder source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuilder;
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder source
        start local 3 // int offset
        start local 4 // int length
         0: .line 694
            aload 2 /* source */
            ifnonnull 2
         1: .line 695
            aconst_null
            areturn
         2: .line 697
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         3: .line 698
            aload 0 /* this */
            aload 1 /* event */
            aload 5 /* buf */
            iconst_0
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 699
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuilder source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  Ljava/lang/StringBuilder;
            0    5     3  offset  I
            0    5     4  length  I
            3    5     5     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  public java.lang.String replace(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.Object source
         0: .line 712
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replace:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.Object source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      source  final

  public java.lang.String replace(org.apache.logging.log4j.core.LogEvent, java.lang.Object);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.Object source
         0: .line 725
            aload 2 /* source */
            ifnonnull 2
         1: .line 726
            aconst_null
            areturn
         2: .line 728
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 729
            aload 0 /* this */
            aload 1 /* event */
            aload 3 /* buf */
            iconst_0
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
         4: .line 730
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.Object source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    5     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    5     2  source  Ljava/lang/Object;
            3    5     3     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public boolean replaceIn(java.lang.StringBuffer);
    descriptor: (Ljava/lang/StringBuffer;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuffer source
         0: .line 743
            aload 1 /* source */
            ifnonnull 2
         1: .line 744
            iconst_0
            ireturn
         2: .line 746
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* source */
            iconst_0
            aload 1 /* source */
            invokevirtual java.lang.StringBuffer.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replaceIn:(Ljava/lang/StringBuffer;II)Z
            ireturn
        end local 1 // java.lang.StringBuffer source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1  source  Ljava/lang/StringBuffer;
    MethodParameters:
        Name  Flags
      source  final

  public boolean replaceIn(java.lang.StringBuffer, int, int);
    descriptor: (Ljava/lang/StringBuffer;II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuffer source
        start local 2 // int offset
        start local 3 // int length
         0: .line 764
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replaceIn:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;II)Z
            ireturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.lang.StringBuffer source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuffer;
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public boolean replaceIn(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuffer, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuffer;II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuffer source
        start local 3 // int offset
        start local 4 // int length
         0: .line 783
            aload 2 /* source */
            ifnonnull 2
         1: .line 784
            iconst_0
            ireturn
         2: .line 786
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 4 /* length */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
            astore 5 /* buf */
        start local 5 // java.lang.StringBuilder buf
         3: .line 787
            aload 0 /* this */
            aload 1 /* event */
            aload 5 /* buf */
            iconst_0
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ifne 5
         4: .line 788
            iconst_0
            ireturn
         5: .line 790
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 2 /* source */
            iload 3 /* offset */
            iload 3 /* offset */
            iload 4 /* length */
            iadd
            aload 5 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.replace:(IILjava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 791
            iconst_1
            ireturn
        end local 5 // java.lang.StringBuilder buf
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuffer source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    7     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    7     2  source  Ljava/lang/StringBuffer;
            0    7     3  offset  I
            0    7     4  length  I
            3    7     5     buf  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  public boolean replaceIn(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder source
         0: .line 803
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replaceIn:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;)Z
            ireturn
        end local 1 // java.lang.StringBuilder source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      source  final

  public boolean replaceIn(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder source
         0: .line 816
            aload 2 /* source */
            ifnonnull 2
         1: .line 817
            iconst_0
            ireturn
         2: .line 819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* event */
            aload 2 /* source */
            iconst_0
            aload 2 /* source */
            invokevirtual java.lang.StringBuilder.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ireturn
        end local 2 // java.lang.StringBuilder source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    3     2  source  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      event   final
      source  final

  public boolean replaceIn(java.lang.StringBuilder, int, int);
    descriptor: (Ljava/lang/StringBuilder;II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder source
        start local 2 // int offset
        start local 3 // int length
         0: .line 835
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.replaceIn:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ireturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.lang.StringBuilder source
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  source  Ljava/lang/StringBuilder;
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      source  final
      offset  final
      length  final

  public boolean replaceIn(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder source
        start local 3 // int offset
        start local 4 // int length
         0: .line 853
            aload 2 /* source */
            ifnonnull 2
         1: .line 854
            iconst_0
            ireturn
         2: .line 856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* event */
            aload 2 /* source */
            iload 3 /* offset */
            iload 4 /* length */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            ireturn
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuilder source
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    3     2  source  Ljava/lang/StringBuilder;
            0    3     3  offset  I
            0    3     4  length  I
    MethodParameters:
        Name  Flags
      event   final
      source  final
      offset  final
      length  final

  protected boolean substitute(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder buf
        start local 3 // int offset
        start local 4 // int length
         0: .line 878
            aload 0 /* this */
            aload 1 /* event */
            aload 2 /* buf */
            iload 3 /* offset */
            iload 4 /* length */
            aconst_null
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;IILjava/util/List;)I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuilder buf
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1   event  Lorg/apache/logging/log4j/core/LogEvent;
            0    2     2     buf  Ljava/lang/StringBuilder;
            0    2     3  offset  I
            0    2     4  length  I
    MethodParameters:
        Name  Flags
      event   final
      buf     final
      offset  final
      length  final

  private int substitute(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder, int, int, java.util.List<java.lang.String>);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;IILjava/util/List;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=28, args_size=6
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.StringBuilder buf
        start local 3 // int offset
        start local 4 // int length
        start local 5 // java.util.List priorVariables
         0: .line 896
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getVariablePrefixMatcher:()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            astore 6 /* prefixMatcher */
        start local 6 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
         1: .line 897
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getVariableSuffixMatcher:()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            astore 7 /* suffixMatcher */
        start local 7 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
         2: .line 898
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getEscapeChar:()C
            istore 8 /* escape */
        start local 8 // char escape
         3: .line 899
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getValueDelimiterMatcher:()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            astore 9 /* valueDelimiterMatcher */
        start local 9 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
         4: .line 900
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.isEnableSubstitutionInVariables:()Z
            istore 10 /* substitutionInVariablesEnabled */
        start local 10 // boolean substitutionInVariablesEnabled
         5: .line 902
            aload 5 /* priorVariables */
            ifnonnull 6
            iconst_1
            goto 7
      StackMap locals: org.apache.logging.log4j.core.lookup.StrSubstitutor org.apache.logging.log4j.core.LogEvent java.lang.StringBuilder int int java.util.List org.apache.logging.log4j.core.lookup.StrMatcher org.apache.logging.log4j.core.lookup.StrMatcher int org.apache.logging.log4j.core.lookup.StrMatcher int
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 11 /* top */
        start local 11 // boolean top
         8: .line 903
            iconst_0
            istore 12 /* altered */
        start local 12 // boolean altered
         9: .line 904
            iconst_0
            istore 13 /* lengthChange */
        start local 13 // int lengthChange
        10: .line 905
            aload 0 /* this */
            aload 2 /* buf */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getChars:(Ljava/lang/StringBuilder;)[C
            astore 14 /* chars */
        start local 14 // char[] chars
        11: .line 906
            iload 3 /* offset */
            iload 4 /* length */
            iadd
            istore 15 /* bufEnd */
        start local 15 // int bufEnd
        12: .line 907
            iload 3 /* offset */
            istore 16 /* pos */
        start local 16 // int pos
        13: .line 908
            goto 86
        14: .line 909
      StackMap locals: org.apache.logging.log4j.core.lookup.StrSubstitutor org.apache.logging.log4j.core.LogEvent java.lang.StringBuilder int int java.util.List org.apache.logging.log4j.core.lookup.StrMatcher org.apache.logging.log4j.core.lookup.StrMatcher int org.apache.logging.log4j.core.lookup.StrMatcher int int int int char[] int int
      StackMap stack:
            aload 6 /* prefixMatcher */
            aload 14 /* chars */
            iload 16 /* pos */
            iload 3 /* offset */
            iload 15 /* bufEnd */
            invokevirtual org.apache.logging.log4j.core.lookup.StrMatcher.isMatch:([CIII)I
            istore 17 /* startMatchLen */
        start local 17 // int startMatchLen
        15: .line 910
            iload 17 /* startMatchLen */
            ifne 18
        16: .line 911
            iinc 16 /* pos */ 1
        17: .line 912
            goto 86
        18: .line 914
      StackMap locals: int
      StackMap stack:
            iload 16 /* pos */
            iload 3 /* offset */
            if_icmple 25
            aload 14 /* chars */
            iload 16 /* pos */
            iconst_1
            isub
            caload
            iload 8 /* escape */
            if_icmpne 25
        19: .line 916
            aload 2 /* buf */
            iload 16 /* pos */
            iconst_1
            isub
            invokevirtual java.lang.StringBuilder.deleteCharAt:(I)Ljava/lang/StringBuilder;
            pop
        20: .line 917
            aload 0 /* this */
            aload 2 /* buf */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getChars:(Ljava/lang/StringBuilder;)[C
            astore 14 /* chars */
        21: .line 918
            iinc 13 /* lengthChange */ -1
        22: .line 919
            iconst_1
            istore 12 /* altered */
        23: .line 920
            iinc 15 /* bufEnd */ -1
        24: .line 921
            goto 86
        25: .line 923
      StackMap locals:
      StackMap stack:
            iload 16 /* pos */
            istore 18 /* startPos */
        start local 18 // int startPos
        26: .line 924
            iload 16 /* pos */
            iload 17 /* startMatchLen */
            iadd
            istore 16 /* pos */
        27: .line 925
            iconst_0
            istore 19 /* endMatchLen */
        start local 19 // int endMatchLen
        28: .line 926
            iconst_0
            istore 20 /* nestedVarCount */
        start local 20 // int nestedVarCount
        29: .line 927
            goto 85
        30: .line 928
      StackMap locals: int int int
      StackMap stack:
            iload 10 /* substitutionInVariablesEnabled */
            ifeq 35
        31: .line 929
            aload 6 /* prefixMatcher */
            aload 14 /* chars */
            iload 16 /* pos */
            iload 3 /* offset */
            iload 15 /* bufEnd */
            invokevirtual org.apache.logging.log4j.core.lookup.StrMatcher.isMatch:([CIII)I
            dup
            istore 19 /* endMatchLen */
            ifeq 35
        32: .line 931
            iinc 20 /* nestedVarCount */ 1
        33: .line 932
            iload 16 /* pos */
            iload 19 /* endMatchLen */
            iadd
            istore 16 /* pos */
        34: .line 933
            goto 85
        35: .line 936
      StackMap locals:
      StackMap stack:
            aload 7 /* suffixMatcher */
            aload 14 /* chars */
            iload 16 /* pos */
            iload 3 /* offset */
            iload 15 /* bufEnd */
            invokevirtual org.apache.logging.log4j.core.lookup.StrMatcher.isMatch:([CIII)I
            istore 19 /* endMatchLen */
        36: .line 937
            iload 19 /* endMatchLen */
            ifne 39
        37: .line 938
            iinc 16 /* pos */ 1
        38: .line 939
            goto 85
        39: .line 941
      StackMap locals:
      StackMap stack:
            iload 20 /* nestedVarCount */
            ifne 83
        40: .line 942
            new java.lang.String
            dup
            aload 14 /* chars */
            iload 18 /* startPos */
            iload 17 /* startMatchLen */
            iadd
            iload 16 /* pos */
            iload 18 /* startPos */
            isub
            iload 17 /* startMatchLen */
            isub
            invokespecial java.lang.String.<init>:([CII)V
            astore 21 /* varNameExpr */
        start local 21 // java.lang.String varNameExpr
        41: .line 943
            iload 10 /* substitutionInVariablesEnabled */
            ifeq 45
        42: .line 944
            new java.lang.StringBuilder
            dup
            aload 21 /* varNameExpr */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 22 /* bufName */
        start local 22 // java.lang.StringBuilder bufName
        43: .line 945
            aload 0 /* this */
            aload 1 /* event */
            aload 22 /* bufName */
            iconst_0
            aload 22 /* bufName */
            invokevirtual java.lang.StringBuilder.length:()I
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;II)Z
            pop
        44: .line 946
            aload 22 /* bufName */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 21 /* varNameExpr */
        end local 22 // java.lang.StringBuilder bufName
        45: .line 948
      StackMap locals: java.lang.String
      StackMap stack:
            iload 16 /* pos */
            iload 19 /* endMatchLen */
            iadd
            istore 16 /* pos */
        46: .line 949
            iload 16 /* pos */
            istore 22 /* endPos */
        start local 22 // int endPos
        47: .line 951
            aload 21 /* varNameExpr */
            astore 23 /* varName */
        start local 23 // java.lang.String varName
        48: .line 952
            aconst_null
            astore 24 /* varDefaultValue */
        start local 24 // java.lang.String varDefaultValue
        49: .line 954
            aload 9 /* valueDelimiterMatcher */
            ifnull 63
        50: .line 955
            aload 21 /* varNameExpr */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 25 /* varNameExprChars */
        start local 25 // char[] varNameExprChars
        51: .line 956
            iconst_0
            istore 26 /* valueDelimiterMatchLen */
        start local 26 // int valueDelimiterMatchLen
        52: .line 957
            iconst_0
            istore 27 /* i */
        start local 27 // int i
        53: goto 62
        54: .line 959
      StackMap locals: org.apache.logging.log4j.core.lookup.StrSubstitutor org.apache.logging.log4j.core.LogEvent java.lang.StringBuilder int int java.util.List org.apache.logging.log4j.core.lookup.StrMatcher org.apache.logging.log4j.core.lookup.StrMatcher int org.apache.logging.log4j.core.lookup.StrMatcher int int int int char[] int int int int int int java.lang.String int java.lang.String java.lang.String char[] int int
      StackMap stack:
            iload 10 /* substitutionInVariablesEnabled */
            ifne 57
        55: .line 960
            aload 6 /* prefixMatcher */
            aload 25 /* varNameExprChars */
            iload 27 /* i */
            iload 27 /* i */
            aload 25 /* varNameExprChars */
            arraylength
            invokevirtual org.apache.logging.log4j.core.lookup.StrMatcher.isMatch:([CIII)I
            ifeq 57
        56: .line 961
            goto 63
        57: .line 963
      StackMap locals:
      StackMap stack:
            aload 9 /* valueDelimiterMatcher */
            aload 25 /* varNameExprChars */
            iload 27 /* i */
            invokevirtual org.apache.logging.log4j.core.lookup.StrMatcher.isMatch:([CI)I
            dup
            istore 26 /* valueDelimiterMatchLen */
            ifeq 61
        58: .line 964
            aload 21 /* varNameExpr */
            iconst_0
            iload 27 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 23 /* varName */
        59: .line 965
            aload 21 /* varNameExpr */
            iload 27 /* i */
            iload 26 /* valueDelimiterMatchLen */
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 24 /* varDefaultValue */
        60: .line 966
            goto 63
        61: .line 957
      StackMap locals:
      StackMap stack:
            iinc 27 /* i */ 1
      StackMap locals:
      StackMap stack:
        62: iload 27 /* i */
            aload 25 /* varNameExprChars */
            arraylength
            if_icmplt 54
        end local 27 // int i
        end local 26 // int valueDelimiterMatchLen
        end local 25 // char[] varNameExprChars
        63: .line 972
      StackMap locals:
      StackMap stack:
            aload 5 /* priorVariables */
            ifnonnull 66
        64: .line 973
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* priorVariables */
        65: .line 974
            aload 5 /* priorVariables */
            new java.lang.String
            dup
            aload 14 /* chars */
            iload 3 /* offset */
            iload 4 /* length */
            iload 13 /* lengthChange */
            iadd
            invokespecial java.lang.String.<init>:([CII)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        66: .line 978
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 23 /* varName */
            aload 5 /* priorVariables */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.checkCyclicSubstitution:(Ljava/lang/String;Ljava/util/List;)V
        67: .line 979
            aload 5 /* priorVariables */
            aload 23 /* varName */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        68: .line 982
            aload 0 /* this */
            aload 1 /* event */
            aload 23 /* varName */
            aload 2 /* buf */
            iload 18 /* startPos */
            iload 22 /* endPos */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.resolveVariable:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;Ljava/lang/StringBuilder;II)Ljava/lang/String;
            astore 25 /* varValue */
        start local 25 // java.lang.String varValue
        69: .line 983
            aload 25 /* varValue */
            ifnonnull 71
        70: .line 984
            aload 24 /* varDefaultValue */
            astore 25 /* varValue */
        71: .line 986
      StackMap locals: java.lang.String
      StackMap stack:
            aload 25 /* varValue */
            ifnull 81
        72: .line 988
            aload 25 /* varValue */
            invokevirtual java.lang.String.length:()I
            istore 26 /* varLen */
        start local 26 // int varLen
        73: .line 989
            aload 2 /* buf */
            iload 18 /* startPos */
            iload 22 /* endPos */
            aload 25 /* varValue */
            invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
            pop
        74: .line 990
            iconst_1
            istore 12 /* altered */
        75: .line 991
            aload 0 /* this */
            aload 1 /* event */
            aload 2 /* buf */
            iload 18 /* startPos */
            iload 26 /* varLen */
            aload 5 /* priorVariables */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.substitute:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;IILjava/util/List;)I
            istore 27 /* change */
        start local 27 // int change
        76: .line 992
            iload 27 /* change */
            iload 26 /* varLen */
            iload 22 /* endPos */
            iload 18 /* startPos */
            isub
            isub
            iadd
            istore 27 /* change */
        77: .line 993
            iload 16 /* pos */
            iload 27 /* change */
            iadd
            istore 16 /* pos */
        78: .line 994
            iload 15 /* bufEnd */
            iload 27 /* change */
            iadd
            istore 15 /* bufEnd */
        79: .line 995
            iload 13 /* lengthChange */
            iload 27 /* change */
            iadd
            istore 13 /* lengthChange */
        80: .line 996
            aload 0 /* this */
            aload 2 /* buf */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getChars:(Ljava/lang/StringBuilder;)[C
            astore 14 /* chars */
        end local 27 // int change
        end local 26 // int varLen
        81: .line 1000
      StackMap locals:
      StackMap stack:
            aload 5 /* priorVariables */
            aload 5 /* priorVariables */
            invokeinterface java.util.List.size:()I
            iconst_1
            isub
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
        82: .line 1001
            goto 86
        end local 25 // java.lang.String varValue
        end local 24 // java.lang.String varDefaultValue
        end local 23 // java.lang.String varName
        end local 22 // int endPos
        end local 21 // java.lang.String varNameExpr
        83: .line 1003
      StackMap locals: org.apache.logging.log4j.core.lookup.StrSubstitutor org.apache.logging.log4j.core.LogEvent java.lang.StringBuilder int int java.util.List org.apache.logging.log4j.core.lookup.StrMatcher org.apache.logging.log4j.core.lookup.StrMatcher int org.apache.logging.log4j.core.lookup.StrMatcher int int int int char[] int int int int int int
      StackMap stack:
            iinc 20 /* nestedVarCount */ -1
        84: .line 1004
            iload 16 /* pos */
            iload 19 /* endMatchLen */
            iadd
            istore 16 /* pos */
        85: .line 927
      StackMap locals:
      StackMap stack:
            iload 16 /* pos */
            iload 15 /* bufEnd */
            if_icmplt 30
        end local 20 // int nestedVarCount
        end local 19 // int endMatchLen
        end local 18 // int startPos
        end local 17 // int startMatchLen
        86: .line 908
      StackMap locals: org.apache.logging.log4j.core.lookup.StrSubstitutor org.apache.logging.log4j.core.LogEvent java.lang.StringBuilder int int java.util.List org.apache.logging.log4j.core.lookup.StrMatcher org.apache.logging.log4j.core.lookup.StrMatcher int org.apache.logging.log4j.core.lookup.StrMatcher int int int int char[] int int
      StackMap stack:
            iload 16 /* pos */
            iload 15 /* bufEnd */
            if_icmplt 14
        87: .line 1010
            iload 11 /* top */
            ifeq 91
        88: .line 1011
            iload 12 /* altered */
            ifeq 89
            iconst_1
            goto 90
      StackMap locals:
      StackMap stack:
        89: iconst_0
      StackMap locals:
      StackMap stack: int
        90: ireturn
        91: .line 1013
      StackMap locals:
      StackMap stack:
            iload 13 /* lengthChange */
            ireturn
        end local 16 // int pos
        end local 15 // int bufEnd
        end local 14 // char[] chars
        end local 13 // int lengthChange
        end local 12 // boolean altered
        end local 11 // boolean top
        end local 10 // boolean substitutionInVariablesEnabled
        end local 9 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
        end local 8 // char escape
        end local 7 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        end local 6 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        end local 5 // java.util.List priorVariables
        end local 4 // int length
        end local 3 // int offset
        end local 2 // java.lang.StringBuilder buf
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   92     0                            this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0   92     1                           event  Lorg/apache/logging/log4j/core/LogEvent;
            0   92     2                             buf  Ljava/lang/StringBuilder;
            0   92     3                          offset  I
            0   92     4                          length  I
            0   92     5                  priorVariables  Ljava/util/List<Ljava/lang/String;>;
            1   92     6                   prefixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            2   92     7                   suffixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            3   92     8                          escape  C
            4   92     9           valueDelimiterMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            5   92    10  substitutionInVariablesEnabled  Z
            8   92    11                             top  Z
            9   92    12                         altered  Z
           10   92    13                    lengthChange  I
           11   92    14                           chars  [C
           12   92    15                          bufEnd  I
           13   92    16                             pos  I
           15   86    17                   startMatchLen  I
           26   86    18                        startPos  I
           28   86    19                     endMatchLen  I
           29   86    20                  nestedVarCount  I
           41   83    21                     varNameExpr  Ljava/lang/String;
           43   45    22                         bufName  Ljava/lang/StringBuilder;
           47   83    22                          endPos  I
           48   83    23                         varName  Ljava/lang/String;
           49   83    24                 varDefaultValue  Ljava/lang/String;
           51   63    25                varNameExprChars  [C
           52   63    26          valueDelimiterMatchLen  I
           53   63    27                               i  I
           69   83    25                        varValue  Ljava/lang/String;
           73   81    26                          varLen  I
           76   81    27                          change  I
    Signature: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;IILjava/util/List<Ljava/lang/String;>;)I
    MethodParameters:
                Name  Flags
      event           final
      buf             final
      offset          final
      length          final
      priorVariables  

  private void checkCyclicSubstitution(java.lang.String, java.util.List<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String varName
        start local 2 // java.util.List priorVariables
         0: .line 1023
            aload 2 /* priorVariables */
            aload 1 /* varName */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 1024
            return
         2: .line 1026
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            sipush 256
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* buf */
        start local 3 // java.lang.StringBuilder buf
         3: .line 1027
            aload 3 /* buf */
            ldc "Infinite loop in property interpolation of "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 1028
            aload 3 /* buf */
            aload 2 /* priorVariables */
            iconst_0
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 1029
            aload 3 /* buf */
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 1030
            aload 0 /* this */
            aload 3 /* buf */
            aload 2 /* priorVariables */
            ldc "->"
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.appendWithSeparators:(Ljava/lang/StringBuilder;Ljava/lang/Iterable;Ljava/lang/String;)V
         7: .line 1031
            new java.lang.IllegalStateException
            dup
            aload 3 /* buf */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.util.List priorVariables
        end local 1 // java.lang.String varName
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    8     1         varName  Ljava/lang/String;
            0    8     2  priorVariables  Ljava/util/List<Ljava/lang/String;>;
            3    8     3             buf  Ljava/lang/StringBuilder;
    Signature: (Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)V
    MethodParameters:
                Name  Flags
      varName         final
      priorVariables  final

  protected java.lang.String resolveVariable(org.apache.logging.log4j.core.LogEvent, java.lang.String, java.lang.StringBuilder, int, int);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;Ljava/lang/StringBuilder;II)Ljava/lang/String;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
        start local 2 // java.lang.String variableName
        start local 3 // java.lang.StringBuilder buf
        start local 4 // int startPos
        start local 5 // int endPos
         0: .line 1056
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.getVariableResolver:()Lorg/apache/logging/log4j/core/lookup/StrLookup;
            astore 6 /* resolver */
        start local 6 // org.apache.logging.log4j.core.lookup.StrLookup resolver
         1: .line 1057
            aload 6 /* resolver */
            ifnonnull 3
         2: .line 1058
            aconst_null
            areturn
         3: .line 1060
      StackMap locals: org.apache.logging.log4j.core.lookup.StrLookup
      StackMap stack:
            aload 6 /* resolver */
            aload 1 /* event */
            aload 2 /* variableName */
            invokeinterface org.apache.logging.log4j.core.lookup.StrLookup.lookup:(Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 6 // org.apache.logging.log4j.core.lookup.StrLookup resolver
        end local 5 // int endPos
        end local 4 // int startPos
        end local 3 // java.lang.StringBuilder buf
        end local 2 // java.lang.String variableName
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1         event  Lorg/apache/logging/log4j/core/LogEvent;
            0    4     2  variableName  Ljava/lang/String;
            0    4     3           buf  Ljava/lang/StringBuilder;
            0    4     4      startPos  I
            0    4     5        endPos  I
            1    4     6      resolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
    MethodParameters:
              Name  Flags
      event         final
      variableName  final
      buf           final
      startPos      final
      endPos        final

  public char getEscapeChar();
    descriptor: ()C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1071
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.escapeChar:C
            ireturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public void setEscapeChar(char);
    descriptor: (C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char escapeCharacter
         0: .line 1082
            aload 0 /* this */
            iload 1 /* escapeCharacter */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.escapeChar:C
         1: .line 1083
            return
        end local 1 // char escapeCharacter
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  escapeCharacter  C
    MethodParameters:
                 Name  Flags
      escapeCharacter  final

  public org.apache.logging.log4j.core.lookup.StrMatcher getVariablePrefixMatcher();
    descriptor: ()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1098
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.prefixMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            areturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariablePrefixMatcher(org.apache.logging.log4j.core.lookup.StrMatcher);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
         0: .line 1114
            aload 1 /* prefixMatcher */
            ifnonnull 2
         1: .line 1115
            new java.lang.IllegalArgumentException
            dup
            ldc "Variable prefix matcher must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* prefixMatcher */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.prefixMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         3: .line 1118
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.lookup.StrMatcher prefixMatcher
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1  prefixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    MethodParameters:
               Name  Flags
      prefixMatcher  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariablePrefix(char);
    descriptor: (C)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char prefix
         0: .line 1133
            aload 0 /* this */
            iload 1 /* prefix */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.charMatcher:(C)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariablePrefixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // char prefix
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  prefix  C
    MethodParameters:
        Name  Flags
      prefix  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariablePrefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String prefix
         0: .line 1148
            aload 1 /* prefix */
            ifnonnull 2
         1: .line 1149
            new java.lang.IllegalArgumentException
            dup
            ldc "Variable prefix must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* prefix */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariablePrefixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // java.lang.String prefix
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1  prefix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prefix  final

  public org.apache.logging.log4j.core.lookup.StrMatcher getVariableSuffixMatcher();
    descriptor: ()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1167
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.suffixMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            areturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariableSuffixMatcher(org.apache.logging.log4j.core.lookup.StrMatcher);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
         0: .line 1183
            aload 1 /* suffixMatcher */
            ifnonnull 2
         1: .line 1184
            new java.lang.IllegalArgumentException
            dup
            ldc "Variable suffix matcher must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* suffixMatcher */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.suffixMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         3: .line 1187
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.lookup.StrMatcher suffixMatcher
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1  suffixMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    MethodParameters:
               Name  Flags
      suffixMatcher  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariableSuffix(char);
    descriptor: (C)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char suffix
         0: .line 1202
            aload 0 /* this */
            iload 1 /* suffix */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.charMatcher:(C)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableSuffixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // char suffix
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  suffix  C
    MethodParameters:
        Name  Flags
      suffix  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setVariableSuffix(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String suffix
         0: .line 1217
            aload 1 /* suffix */
            ifnonnull 2
         1: .line 1218
            new java.lang.IllegalArgumentException
            dup
            ldc "Variable suffix must not be null!"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* suffix */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setVariableSuffixMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // java.lang.String suffix
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1  suffix  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      suffix  final

  public org.apache.logging.log4j.core.lookup.StrMatcher getValueDelimiterMatcher();
    descriptor: ()Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1239
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.valueDelimiterMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            areturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setValueDelimiterMatcher(org.apache.logging.log4j.core.lookup.StrMatcher);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
         0: .line 1258
            aload 0 /* this */
            aload 1 /* valueDelimiterMatcher */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.valueDelimiterMatcher:Lorg/apache/logging/log4j/core/lookup/StrMatcher;
         1: .line 1259
            aload 0 /* this */
            areturn
        end local 1 // org.apache.logging.log4j.core.lookup.StrMatcher valueDelimiterMatcher
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  valueDelimiterMatcher  Lorg/apache/logging/log4j/core/lookup/StrMatcher;
    MethodParameters:
                       Name  Flags
      valueDelimiterMatcher  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setValueDelimiter(char);
    descriptor: (C)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // char valueDelimiter
         0: .line 1274
            aload 0 /* this */
            iload 1 /* valueDelimiter */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.charMatcher:(C)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setValueDelimiterMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // char valueDelimiter
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    1     1  valueDelimiter  C
    MethodParameters:
                Name  Flags
      valueDelimiter  final

  public org.apache.logging.log4j.core.lookup.StrSubstitutor setValueDelimiter(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.String valueDelimiter
         0: .line 1293
            aload 1 /* valueDelimiter */
            invokestatic org.apache.logging.log4j.util.Strings.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 3
         1: .line 1294
            aload 0 /* this */
            aconst_null
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setValueDelimiterMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            pop
         2: .line 1295
            aload 0 /* this */
            areturn
         3: .line 1297
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* valueDelimiter */
            invokestatic org.apache.logging.log4j.core.lookup.StrMatcher.stringMatcher:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/lookup/StrMatcher;
            invokevirtual org.apache.logging.log4j.core.lookup.StrSubstitutor.setValueDelimiterMatcher:(Lorg/apache/logging/log4j/core/lookup/StrMatcher;)Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            areturn
        end local 1 // java.lang.String valueDelimiter
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1  valueDelimiter  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      valueDelimiter  final

  public org.apache.logging.log4j.core.lookup.StrLookup getVariableResolver();
    descriptor: ()Lorg/apache/logging/log4j/core/lookup/StrLookup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1308
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.variableResolver:Lorg/apache/logging/log4j/core/lookup/StrLookup;
            areturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public void setVariableResolver(org.apache.logging.log4j.core.lookup.StrLookup);
    descriptor: (Lorg/apache/logging/log4j/core/lookup/StrLookup;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
         0: .line 1317
            aload 1 /* variableResolver */
            instanceof org.apache.logging.log4j.core.config.ConfigurationAware
            ifeq 2
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            ifnull 2
         1: .line 1318
            aload 1 /* variableResolver */
            checkcast org.apache.logging.log4j.core.config.ConfigurationAware
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            invokeinterface org.apache.logging.log4j.core.config.ConfigurationAware.setConfiguration:(Lorg/apache/logging/log4j/core/config/Configuration;)V
         2: .line 1320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* variableResolver */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.variableResolver:Lorg/apache/logging/log4j/core/lookup/StrLookup;
         3: .line 1321
            return
        end local 1 // org.apache.logging.log4j.core.lookup.StrLookup variableResolver
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1  variableResolver  Lorg/apache/logging/log4j/core/lookup/StrLookup;
    MethodParameters:
                  Name  Flags
      variableResolver  final

  public boolean isEnableSubstitutionInVariables();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1331
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.enableSubstitutionInVariables:Z
            ireturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public void setEnableSubstitutionInVariables(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // boolean enableSubstitutionInVariables
         0: .line 1343
            aload 0 /* this */
            iload 1 /* enableSubstitutionInVariables */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.enableSubstitutionInVariables:Z
         1: .line 1344
            return
        end local 1 // boolean enableSubstitutionInVariables
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    2     0                           this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    2     1  enableSubstitutionInVariables  Z
    MethodParameters:
                               Name  Flags
      enableSubstitutionInVariables  final

  private char[] getChars(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)[C
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder sb
         0: .line 1347
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            newarray 5
            astore 2 /* chars */
        start local 2 // char[] chars
         1: .line 1348
            aload 1 /* sb */
            iconst_0
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            aload 2 /* chars */
            iconst_0
            invokevirtual java.lang.StringBuilder.getChars:(II[CI)V
         2: .line 1349
            aload 2 /* chars */
            areturn
        end local 2 // char[] chars
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    3     1     sb  Ljava/lang/StringBuilder;
            1    3     2  chars  [C
    MethodParameters:
      Name  Flags
      sb    final

  public void appendWithSeparators(java.lang.StringBuilder, java.lang.Iterable<?>, java.lang.String);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/Iterable;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // java.lang.StringBuilder sb
        start local 2 // java.lang.Iterable iterable
        start local 3 // java.lang.String separator
         0: .line 1362
            aload 2 /* iterable */
            ifnull 10
         1: .line 1363
            aload 3 /* separator */
            ifnonnull 2
            ldc ""
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 3 /* separator */
      StackMap locals:
      StackMap stack: java.lang.String
         3: astore 3 /* separator */
         4: .line 1364
            aload 2 /* iterable */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         5: .line 1365
            goto 9
         6: .line 1366
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* sb */
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         7: .line 1367
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 9
         8: .line 1368
            aload 1 /* sb */
            aload 3 /* separator */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 1365
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 4 // java.util.Iterator it
        10: .line 1372
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.String separator
        end local 2 // java.lang.Iterable iterable
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0   11     1         sb  Ljava/lang/StringBuilder;
            0   11     2   iterable  Ljava/lang/Iterable<*>;
            0   11     3  separator  Ljava/lang/String;
            5   10     4         it  Ljava/util/Iterator<*>;
    Signature: (Ljava/lang/StringBuilder;Ljava/lang/Iterable<*>;Ljava/lang/String;)V
    MethodParameters:
           Name  Flags
      sb         final
      iterable   final
      separator  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
         0: .line 1376
            new java.lang.StringBuilder
            dup
            ldc "StrSubstitutor("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.variableResolver:Lorg/apache/logging/log4j/core/lookup/StrLookup;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;

  public void setConfiguration(org.apache.logging.log4j.core.config.Configuration);
    descriptor: (Lorg/apache/logging/log4j/core/config/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
        start local 1 // org.apache.logging.log4j.core.config.Configuration configuration
         0: .line 1381
            aload 0 /* this */
            aload 1 /* configuration */
            putfield org.apache.logging.log4j.core.lookup.StrSubstitutor.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
         1: .line 1382
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.variableResolver:Lorg/apache/logging/log4j/core/lookup/StrLookup;
            instanceof org.apache.logging.log4j.core.config.ConfigurationAware
            ifeq 3
         2: .line 1383
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.variableResolver:Lorg/apache/logging/log4j/core/lookup/StrLookup;
            checkcast org.apache.logging.log4j.core.config.ConfigurationAware
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.lookup.StrSubstitutor.configuration:Lorg/apache/logging/log4j/core/config/Configuration;
            invokeinterface org.apache.logging.log4j.core.config.ConfigurationAware.setConfiguration:(Lorg/apache/logging/log4j/core/config/Configuration;)V
         3: .line 1385
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.logging.log4j.core.config.Configuration configuration
        end local 0 // org.apache.logging.log4j.core.lookup.StrSubstitutor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/apache/logging/log4j/core/lookup/StrSubstitutor;
            0    4     1  configuration  Lorg/apache/logging/log4j/core/config/Configuration;
    MethodParameters:
               Name  Flags
      configuration  final
}
SourceFile: "StrSubstitutor.java"