public final class org.apache.tomcat.util.buf.UriUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.apache.tomcat.util.buf.UriUtil
  super_class: java.lang.Object
{
  private static final char[] HEX;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern PATTERN_EXCLAMATION_MARK;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern PATTERN_CARET;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern PATTERN_ASTERISK;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.regex.Pattern PATTERN_CUSTOM;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=7, args_size=0
         0: .line 30
            bipush 16
            newarray 5
            dup
            iconst_0
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
            bipush 65
            castore
            dup
            bipush 11
            bipush 66
            castore
            dup
            bipush 12
            bipush 67
            castore
            dup
            bipush 13
            bipush 68
            castore
            dup
            bipush 14
            bipush 69
            castore
            dup
            bipush 15
            bipush 70
            castore
         1: .line 29
            putstatic org.apache.tomcat.util.buf.UriUtil.HEX:[C
         2: .line 32
            ldc "!/"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_EXCLAMATION_MARK:Ljava/util/regex/Pattern;
         3: .line 33
            ldc "\\^/"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CARET:Ljava/util/regex/Pattern;
         4: .line 34
            ldc "\\*/"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_ASTERISK:Ljava/util/regex/Pattern;
         5: .line 41
            ldc "org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* custom */
        start local 0 // java.lang.String custom
         6: .line 42
            aload 0 /* custom */
            ifnonnull 11
         7: .line 43
            ldc "*/"
            putstatic org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR:Ljava/lang/String;
         8: .line 44
            aconst_null
            putstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
         9: .line 45
            aconst_null
            putstatic org.apache.tomcat.util.buf.UriUtil.REPLACE_CUSTOM:Ljava/lang/String;
        10: .line 46
            goto 26
        11: .line 47
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* custom */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putstatic org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR:Ljava/lang/String;
        12: .line 48
            getstatic org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR:Ljava/lang/String;
            invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
        13: .line 49
            new java.lang.StringBuffer
            dup
            aload 0 /* custom */
            invokevirtual java.lang.String.length:()I
            iconst_3
            imul
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuffer sb
        14: .line 51
            aload 0 /* custom */
            invokevirtual java.lang.String.getBytes:()[B
            astore 2 /* ba */
        start local 2 // byte[] ba
        15: .line 52
            iconst_0
            istore 3 /* j */
        start local 3 // int j
        16: goto 24
        17: .line 54
      StackMap locals: java.lang.StringBuffer byte[] int
      StackMap stack:
            aload 2 /* ba */
            iload 3 /* j */
            baload
            istore 4 /* toEncode */
        start local 4 // byte toEncode
        18: .line 55
            aload 1 /* sb */
            bipush 37
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        19: .line 56
            iload 4 /* toEncode */
            bipush 15
            iand
            istore 5 /* low */
        start local 5 // int low
        20: .line 57
            iload 4 /* toEncode */
            sipush 240
            iand
            iconst_4
            ishr
            istore 6 /* high */
        start local 6 // int high
        21: .line 58
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.buf.UriUtil.HEX:[C
            iload 6 /* high */
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        22: .line 59
            aload 1 /* sb */
            getstatic org.apache.tomcat.util.buf.UriUtil.HEX:[C
            iload 5 /* low */
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        end local 6 // int high
        end local 5 // int low
        end local 4 // byte toEncode
        23: .line 52
            iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
        24: iload 3 /* j */
            aload 2 /* ba */
            arraylength
            if_icmplt 17
        end local 3 // int j
        25: .line 61
            aload 1 /* sb */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            putstatic org.apache.tomcat.util.buf.UriUtil.REPLACE_CUSTOM:Ljava/lang/String;
        end local 2 // byte[] ba
        end local 1 // java.lang.StringBuffer sb
        end local 0 // java.lang.String custom
        26: .line 63
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            6   26     0    custom  Ljava/lang/String;
           14   26     1        sb  Ljava/lang/StringBuffer;
           15   26     2        ba  [B
           16   25     3         j  I
           18   23     4  toEncode  B
           20   23     5       low  I
           21   23     6      high  I

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.tomcat.util.buf.UriUtil this
         0: .line 66
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 68
            return
        end local 0 // org.apache.tomcat.util.buf.UriUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/tomcat/util/buf/UriUtil;

  private static boolean isSchemeChar(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 81
            iload 0 /* c */
            invokestatic java.lang.Character.isLetterOrDigit:(C)Z
            ifne 1
            iload 0 /* c */
            bipush 43
            if_icmpeq 1
            iload 0 /* c */
            bipush 45
            if_icmpeq 1
            iload 0 /* c */
            bipush 46
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static boolean hasScheme(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.lang.CharSequence uri
         0: .line 93
            aload 0 /* uri */
            invokeinterface java.lang.CharSequence.length:()I
            istore 1 /* len */
        start local 1 // int len
         1: .line 94
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 10
         3: .line 95
      StackMap locals: int int
      StackMap stack:
            aload 0 /* uri */
            iload 2 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
         4: .line 96
            iload 3 /* c */
            bipush 58
            if_icmpne 7
         5: .line 97
            iload 2 /* i */
            ifle 6
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         6: iconst_0
            ireturn
         7: .line 98
      StackMap locals:
      StackMap stack:
            iload 3 /* c */
            invokestatic org.apache.tomcat.util.buf.UriUtil.isSchemeChar:(C)Z
            ifne 9
         8: .line 99
            iconst_0
            ireturn
        end local 3 // char c
         9: .line 94
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            iload 1 /* len */
            if_icmplt 3
        end local 2 // int i
        11: .line 102
            iconst_0
            ireturn
        end local 1 // int len
        end local 0 // java.lang.CharSequence uri
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0   uri  Ljava/lang/CharSequence;
            1   12     1   len  I
            2   11     2     i  I
            4    9     3     c  C
    MethodParameters:
      Name  Flags
      uri   

  public static java.net.URL buildJarUrl(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.io.File jarFile
         0: .line 107
            aload 0 /* jarFile */
            aconst_null
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/io/File;Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 0 // java.io.File jarFile
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  jarFile  Ljava/io/File;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
         Name  Flags
      jarFile  

  public static java.net.URL buildJarUrl(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.io.File jarFile
        start local 1 // java.lang.String entryPath
         0: .line 112
            aload 0 /* jarFile */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            aload 1 /* entryPath */
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 1 // java.lang.String entryPath
        end local 0 // java.io.File jarFile
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0    jarFile  Ljava/io/File;
            0    1     1  entryPath  Ljava/lang/String;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
           Name  Flags
      jarFile    
      entryPath  

  public static java.net.URL buildJarUrl(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String fileUrlString
         0: .line 117
            aload 0 /* fileUrlString */
            aconst_null
            invokestatic org.apache.tomcat.util.buf.UriUtil.buildJarUrl:(Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL;
            areturn
        end local 0 // java.lang.String fileUrlString
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0  fileUrlString  Ljava/lang/String;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
               Name  Flags
      fileUrlString  

  public static java.net.URL buildJarUrl(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // java.lang.String fileUrlString
        start local 1 // java.lang.String entryPath
         0: .line 122
            aload 0 /* fileUrlString */
            invokestatic org.apache.tomcat.util.buf.UriUtil.makeSafeForJarUrl:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* safeString */
        start local 2 // java.lang.String safeString
         1: .line 123
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         2: .line 124
            aload 3 /* sb */
            aload 2 /* safeString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 125
            aload 3 /* sb */
            ldc "!/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 126
            aload 1 /* entryPath */
            ifnull 6
         5: .line 127
            aload 3 /* sb */
            aload 1 /* entryPath */
            invokestatic org.apache.tomcat.util.buf.UriUtil.makeSafeForJarUrl:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 129
      StackMap locals: java.lang.String java.lang.StringBuilder
      StackMap stack:
            new java.net.URL
            dup
            ldc "jar"
            aconst_null
            iconst_m1
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
            areturn
        end local 3 // java.lang.StringBuilder sb
        end local 2 // java.lang.String safeString
        end local 1 // java.lang.String entryPath
        end local 0 // java.lang.String fileUrlString
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0  fileUrlString  Ljava/lang/String;
            0    7     1      entryPath  Ljava/lang/String;
            1    7     2     safeString  Ljava/lang/String;
            2    7     3             sb  Ljava/lang/StringBuilder;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
               Name  Flags
      fileUrlString  
      entryPath      

  public static java.net.URL buildJarSafeUrl(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.io.File file
         0: .line 134
            aload 0 /* file */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokevirtual java.net.URI.toString:()Ljava/lang/String;
            invokestatic org.apache.tomcat.util.buf.UriUtil.makeSafeForJarUrl:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* safe */
        start local 1 // java.lang.String safe
         1: .line 135
            new java.net.URL
            dup
            aload 1 /* safe */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
            areturn
        end local 1 // java.lang.String safe
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  file  Ljava/io/File;
            1    2     1  safe  Ljava/lang/String;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
      Name  Flags
      file  

  private static java.lang.String makeSafeForJarUrl(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String input
         0: .line 158
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_EXCLAMATION_MARK:Ljava/util/regex/Pattern;
            aload 0 /* input */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            ldc "%21/"
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* tmp */
        start local 1 // java.lang.String tmp
         1: .line 160
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CARET:Ljava/util/regex/Pattern;
            aload 1 /* tmp */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            ldc "%5e/"
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* tmp */
         2: .line 161
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_ASTERISK:Ljava/util/regex/Pattern;
            aload 1 /* tmp */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            ldc "%2a/"
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* tmp */
         3: .line 162
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
            ifnull 5
         4: .line 163
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
            aload 1 /* tmp */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            getstatic org.apache.tomcat.util.buf.UriUtil.REPLACE_CUSTOM:Ljava/lang/String;
            invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* tmp */
         5: .line 165
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* tmp */
            areturn
        end local 1 // java.lang.String tmp
        end local 0 // java.lang.String input
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0  input  Ljava/lang/String;
            1    6     1    tmp  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      input  

  public static java.net.URL warToJar(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljava/net/URL;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // java.net.URL warUrl
         0: .line 181
            aload 0 /* warUrl */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            astore 1 /* file */
        start local 1 // java.lang.String file
         1: .line 182
            aload 1 /* file */
            ldc "*/"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 4
         2: .line 183
            aload 1 /* file */
            ldc "\\*/"
            ldc "!/"
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* file */
         3: .line 184
            goto 9
      StackMap locals: java.lang.String
      StackMap stack:
         4: aload 1 /* file */
            ldc "^/"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 7
         5: .line 185
            aload 1 /* file */
            ldc "\\^/"
            ldc "!/"
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* file */
         6: .line 186
            goto 9
      StackMap locals:
      StackMap stack:
         7: getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
            ifnull 9
         8: .line 187
            aload 1 /* file */
            getstatic org.apache.tomcat.util.buf.UriUtil.PATTERN_CUSTOM:Ljava/util/regex/Pattern;
            invokevirtual java.util.regex.Pattern.pattern:()Ljava/lang/String;
            ldc "!/"
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* file */
         9: .line 190
      StackMap locals:
      StackMap stack:
            new java.net.URL
            dup
            ldc "jar"
            aload 0 /* warUrl */
            invokevirtual java.net.URL.getHost:()Ljava/lang/String;
            aload 0 /* warUrl */
            invokevirtual java.net.URL.getPort:()I
            aload 1 /* file */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
            areturn
        end local 1 // java.lang.String file
        end local 0 // java.net.URL warUrl
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0  warUrl  Ljava/net/URL;
            1   10     1    file  Ljava/lang/String;
    Exceptions:
      throws java.net.MalformedURLException
    MethodParameters:
        Name  Flags
      warUrl  

  public static java.lang.String getWarSeparator();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 195
            getstatic org.apache.tomcat.util.buf.UriUtil.WAR_SEPARATOR:Ljava/lang/String;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "UriUtil.java"