public final class org.glassfish.grizzly.http.util.UDecoder
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.glassfish.grizzly.http.util.UDecoder
  super_class: java.lang.Object
{
  private static final java.lang.String ALLOW_ENCODED_SLASH_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "org.glassfish.grizzly.util.buf.UDecoder.ALLOW_ENCODED_SLASH"

  public static final boolean ALLOW_ENCODED_SLASH;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 33
            ldc "org.glassfish.grizzly.util.buf.UDecoder.ALLOW_ENCODED_SLASH"
            ldc "false"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putstatic org.glassfish.grizzly.http.util.UDecoder.ALLOW_ENCODED_SLASH:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
         0: .line 37
            aload 0 /* this */
            getstatic org.glassfish.grizzly.http.util.UDecoder.ALLOW_ENCODED_SLASH:Z
            invokespecial org.glassfish.grizzly.http.util.UDecoder.<init>:(Z)V
         1: .line 38
            return
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/http/util/UDecoder;

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // boolean allowEncodedSlash
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 41
            aload 0 /* this */
            iload 1 /* allowEncodedSlash */
            putfield org.glassfish.grizzly.http.util.UDecoder.allowEncodedSlash:Z
         2: .line 42
            return
        end local 1 // boolean allowEncodedSlash
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    3     1  allowEncodedSlash  Z
    MethodParameters:
                   Name  Flags
      allowEncodedSlash  

  public void convert(org.glassfish.grizzly.http.util.ByteChunk);
    descriptor: (Lorg/glassfish/grizzly/http/util/ByteChunk;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // org.glassfish.grizzly.http.util.ByteChunk mb
         0: .line 48
            aload 0 /* this */
            aload 1 /* mb */
            iconst_1
            invokevirtual org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/ByteChunk;Z)V
         1: .line 49
            return
        end local 1 // org.glassfish.grizzly.http.util.ByteChunk mb
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1    mb  Lorg/glassfish/grizzly/http/util/ByteChunk;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      mb    

  public void convert(org.glassfish.grizzly.http.util.ByteChunk, boolean);
    descriptor: (Lorg/glassfish/grizzly/http/util/ByteChunk;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // org.glassfish.grizzly.http.util.ByteChunk mb
        start local 2 // boolean query
         0: .line 55
            aload 1 /* mb */
            iload 2 /* query */
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.util.UDecoder.allowEncodedSlash:Z
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/ByteChunk;ZZ)V
         1: .line 56
            return
        end local 2 // boolean query
        end local 1 // org.glassfish.grizzly.http.util.ByteChunk mb
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1     mb  Lorg/glassfish/grizzly/http/util/ByteChunk;
            0    2     2  query  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      mb     
      query  

  public static void convert(org.glassfish.grizzly.http.util.ByteChunk, boolean, boolean);
    descriptor: (Lorg/glassfish/grizzly/http/util/ByteChunk;ZZ)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=13, args_size=3
        start local 0 // org.glassfish.grizzly.http.util.ByteChunk mb
        start local 1 // boolean query
        start local 2 // boolean allowEncodedSlash
         0: .line 62
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getStart:()I
            istore 3 /* start */
        start local 3 // int start
         1: .line 63
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getBytes:()[B
            astore 4 /* buff */
        start local 4 // byte[] buff
         2: .line 64
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.ByteChunk.getEnd:()I
            istore 5 /* end */
        start local 5 // int end
         3: .line 66
            aload 4 /* buff */
            iload 3 /* start */
            iload 5 /* end */
            bipush 37
            invokestatic org.glassfish.grizzly.http.util.ByteChunk.indexOf:([BIIC)I
            istore 6 /* idx */
        start local 6 // int idx
         4: .line 67
            iconst_m1
            istore 7 /* idx2 */
        start local 7 // int idx2
         5: .line 68
            iload 1 /* query */
            ifeq 7
         6: .line 69
            aload 4 /* buff */
            iload 3 /* start */
            iload 5 /* end */
            bipush 43
            invokestatic org.glassfish.grizzly.http.util.ByteChunk.indexOf:([BIIC)I
            istore 7 /* idx2 */
         7: .line 71
      StackMap locals: org.glassfish.grizzly.http.util.ByteChunk int int int byte[] int int int
      StackMap stack:
            iload 6 /* idx */
            ifge 9
            iload 7 /* idx2 */
            ifge 9
         8: .line 72
            return
         9: .line 76
      StackMap locals:
      StackMap stack:
            iload 7 /* idx2 */
            iflt 11
            iload 7 /* idx2 */
            iload 6 /* idx */
            if_icmpge 11
        10: .line 77
            iload 7 /* idx2 */
            istore 6 /* idx */
        11: .line 79
      StackMap locals:
      StackMap stack:
            iload 6 /* idx */
            ifge 13
        12: .line 80
            iload 7 /* idx2 */
            istore 6 /* idx */
        13: .line 83
      StackMap locals:
      StackMap stack:
            iload 2 /* allowEncodedSlash */
            ifne 14
            iload 1 /* query */
            ifeq 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
            goto 16
      StackMap locals:
      StackMap stack:
        15: iconst_1
      StackMap locals:
      StackMap stack: int
        16: istore 8 /* noSlash */
        start local 8 // boolean noSlash
        17: .line 85
            iload 6 /* idx */
            istore 9 /* j */
        start local 9 // int j
        18: goto 37
        19: .line 86
      StackMap locals: int int
      StackMap stack:
            aload 4 /* buff */
            iload 9 /* j */
            baload
            bipush 43
            if_icmpne 22
            iload 1 /* query */
            ifeq 22
        20: .line 87
            aload 4 /* buff */
            iload 6 /* idx */
            bipush 32
            bastore
        21: .line 88
            goto 36
      StackMap locals:
      StackMap stack:
        22: aload 4 /* buff */
            iload 9 /* j */
            baload
            bipush 37
            if_icmpeq 25
        23: .line 89
            aload 4 /* buff */
            iload 6 /* idx */
            aload 4 /* buff */
            iload 9 /* j */
            baload
            bastore
        24: .line 90
            goto 36
        25: .line 92
      StackMap locals:
      StackMap stack:
            iload 9 /* j */
            iconst_2
            iadd
            iload 5 /* end */
            if_icmplt 27
        26: .line 93
            new java.io.CharConversionException
            dup
            ldc "EOF"
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 95
      StackMap locals:
      StackMap stack:
            aload 4 /* buff */
            iload 9 /* j */
            iconst_1
            iadd
            baload
            istore 10 /* b1 */
        start local 10 // byte b1
        28: .line 96
            aload 4 /* buff */
            iload 9 /* j */
            iconst_2
            iadd
            baload
            istore 11 /* b2 */
        start local 11 // byte b2
        29: .line 97
            iload 10 /* b1 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.isHexDigit:(I)Z
            ifeq 30
            iload 11 /* b2 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.isHexDigit:(I)Z
            ifne 31
        30: .line 98
      StackMap locals: int int
      StackMap stack:
            new java.io.CharConversionException
            dup
            ldc "isHexDigit"
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        31: .line 101
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 2
        32: .line 102
            iload 10 /* b1 */
            iload 11 /* b2 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.x2c:(BB)I
            istore 12 /* res */
        start local 12 // int res
        33: .line 103
            iload 8 /* noSlash */
            ifeq 35
            iload 12 /* res */
            bipush 47
            if_icmpne 35
        34: .line 104
            new java.io.CharConversionException
            dup
            ldc "Encoded slashes are not allowed by default.  To enable encodedslashes, set the property org.glassfish.grizzly.util.buf.UDecoder.ALLOW_ENCODED_SLASH to true."
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        35: .line 107
      StackMap locals: int
      StackMap stack:
            aload 4 /* buff */
            iload 6 /* idx */
            iload 12 /* res */
            i2b
            bastore
        end local 12 // int res
        end local 11 // byte b2
        end local 10 // byte b1
        36: .line 85
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
            iinc 6 /* idx */ 1
      StackMap locals:
      StackMap stack:
        37: iload 9 /* j */
            iload 5 /* end */
            if_icmplt 19
        end local 9 // int j
        38: .line 111
            aload 0 /* mb */
            iload 6 /* idx */
            invokevirtual org.glassfish.grizzly.http.util.ByteChunk.setEnd:(I)V
        39: .line 113
            return
        end local 8 // boolean noSlash
        end local 7 // int idx2
        end local 6 // int idx
        end local 5 // int end
        end local 4 // byte[] buff
        end local 3 // int start
        end local 2 // boolean allowEncodedSlash
        end local 1 // boolean query
        end local 0 // org.glassfish.grizzly.http.util.ByteChunk mb
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   40     0                 mb  Lorg/glassfish/grizzly/http/util/ByteChunk;
            0   40     1              query  Z
            0   40     2  allowEncodedSlash  Z
            1   40     3              start  I
            2   40     4               buff  [B
            3   40     5                end  I
            4   40     6                idx  I
            5   40     7               idx2  I
           17   40     8            noSlash  Z
           18   38     9                  j  I
           28   36    10                 b1  B
           29   36    11                 b2  B
           33   36    12                res  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      mb                 
      query              
      allowEncodedSlash  

  public void convert(org.glassfish.grizzly.http.util.CharChunk);
    descriptor: (Lorg/glassfish/grizzly/http/util/CharChunk;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // org.glassfish.grizzly.http.util.CharChunk mb
         0: .line 121
            aload 1 /* mb */
            iconst_1
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/CharChunk;Z)V
         1: .line 122
            return
        end local 1 // org.glassfish.grizzly.http.util.CharChunk mb
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1    mb  Lorg/glassfish/grizzly/http/util/CharChunk;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      mb    

  public static void convert(org.glassfish.grizzly.http.util.CharChunk, boolean);
    descriptor: (Lorg/glassfish/grizzly/http/util/CharChunk;Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=12, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.CharChunk mb
        start local 1 // boolean query
         0: .line 129
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.CharChunk.getStart:()I
            istore 2 /* start */
        start local 2 // int start
         1: .line 130
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.CharChunk.getBuffer:()[C
            astore 3 /* buff */
        start local 3 // char[] buff
         2: .line 131
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.CharChunk.getEnd:()I
            istore 4 /* cend */
        start local 4 // int cend
         3: .line 133
            aload 3 /* buff */
            iload 2 /* start */
            iload 4 /* cend */
            bipush 37
            invokestatic org.glassfish.grizzly.http.util.CharChunk.indexOf:([CIIC)I
            istore 5 /* idx */
        start local 5 // int idx
         4: .line 134
            iconst_m1
            istore 6 /* idx2 */
        start local 6 // int idx2
         5: .line 135
            iload 1 /* query */
            ifeq 7
         6: .line 136
            aload 3 /* buff */
            iload 2 /* start */
            iload 4 /* cend */
            bipush 43
            invokestatic org.glassfish.grizzly.http.util.CharChunk.indexOf:([CIIC)I
            istore 6 /* idx2 */
         7: .line 138
      StackMap locals: org.glassfish.grizzly.http.util.CharChunk int int char[] int int int
      StackMap stack:
            iload 5 /* idx */
            ifge 9
            iload 6 /* idx2 */
            ifge 9
         8: .line 139
            return
         9: .line 142
      StackMap locals:
      StackMap stack:
            iload 6 /* idx2 */
            iflt 11
            iload 6 /* idx2 */
            iload 5 /* idx */
            if_icmpge 11
        10: .line 143
            iload 6 /* idx2 */
            istore 5 /* idx */
        11: .line 145
      StackMap locals:
      StackMap stack:
            iload 5 /* idx */
            ifge 13
        12: .line 146
            iload 6 /* idx2 */
            istore 5 /* idx */
        13: .line 149
      StackMap locals:
      StackMap stack:
            iload 5 /* idx */
            istore 7 /* j */
        start local 7 // int j
        14: goto 32
        15: .line 150
      StackMap locals: int
      StackMap stack:
            aload 3 /* buff */
            iload 7 /* j */
            caload
            istore 8 /* c */
        start local 8 // char c
        16: .line 151
            iload 8 /* c */
            bipush 43
            if_icmpne 19
            iload 1 /* query */
            ifeq 19
        17: .line 152
            aload 3 /* buff */
            iload 5 /* idx */
            bipush 32
            castore
        18: .line 153
            goto 31
      StackMap locals: int
      StackMap stack:
        19: iload 8 /* c */
            bipush 37
            if_icmpeq 22
        20: .line 154
            aload 3 /* buff */
            iload 5 /* idx */
            iload 8 /* c */
            castore
        21: .line 155
            goto 31
        22: .line 157
      StackMap locals:
      StackMap stack:
            iload 7 /* j */
            iconst_2
            iadd
            iload 4 /* cend */
            if_icmplt 24
        23: .line 159
            new java.io.CharConversionException
            dup
            ldc "EOF"
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 161
      StackMap locals:
      StackMap stack:
            aload 3 /* buff */
            iload 7 /* j */
            iconst_1
            iadd
            caload
            istore 9 /* b1 */
        start local 9 // char b1
        25: .line 162
            aload 3 /* buff */
            iload 7 /* j */
            iconst_2
            iadd
            caload
            istore 10 /* b2 */
        start local 10 // char b2
        26: .line 163
            iload 9 /* b1 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.isHexDigit:(I)Z
            ifeq 27
            iload 10 /* b2 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.isHexDigit:(I)Z
            ifne 28
        27: .line 164
      StackMap locals: int int
      StackMap stack:
            new java.io.CharConversionException
            dup
            ldc "isHexDigit"
            invokespecial java.io.CharConversionException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 167
      StackMap locals:
      StackMap stack:
            iinc 7 /* j */ 2
        29: .line 168
            iload 9 /* b1 */
            iload 10 /* b2 */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.x2c:(CC)I
            istore 11 /* res */
        start local 11 // int res
        30: .line 169
            aload 3 /* buff */
            iload 5 /* idx */
            iload 11 /* res */
            i2c
            castore
        end local 11 // int res
        end local 10 // char b2
        end local 9 // char b1
        end local 8 // char c
        31: .line 149
      StackMap locals:
      StackMap stack:
            iinc 7 /* j */ 1
            iinc 5 /* idx */ 1
      StackMap locals:
      StackMap stack:
        32: iload 7 /* j */
            iload 4 /* cend */
            if_icmplt 15
        end local 7 // int j
        33: .line 172
            aload 0 /* mb */
            iload 5 /* idx */
            invokevirtual org.glassfish.grizzly.http.util.CharChunk.setEnd:(I)V
        34: .line 173
            return
        end local 6 // int idx2
        end local 5 // int idx
        end local 4 // int cend
        end local 3 // char[] buff
        end local 2 // int start
        end local 1 // boolean query
        end local 0 // org.glassfish.grizzly.http.util.CharChunk mb
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   35     0     mb  Lorg/glassfish/grizzly/http/util/CharChunk;
            0   35     1  query  Z
            1   35     2  start  I
            2   35     3   buff  [C
            3   35     4   cend  I
            4   35     5    idx  I
            5   35     6   idx2  I
           14   33     7      j  I
           16   31     8      c  C
           25   31     9     b1  C
           26   31    10     b2  C
           30   31    11    res  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      mb     
      query  

  public void convert(org.glassfish.grizzly.http.util.MessageBytes);
    descriptor: (Lorg/glassfish/grizzly/http/util/MessageBytes;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // org.glassfish.grizzly.http.util.MessageBytes mb
         0: .line 179
            aload 0 /* this */
            aload 1 /* mb */
            iconst_1
            invokevirtual org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/MessageBytes;Z)V
         1: .line 180
            return
        end local 1 // org.glassfish.grizzly.http.util.MessageBytes mb
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1    mb  Lorg/glassfish/grizzly/http/util/MessageBytes;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      mb    

  public void convert(org.glassfish.grizzly.http.util.MessageBytes, boolean);
    descriptor: (Lorg/glassfish/grizzly/http/util/MessageBytes;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // org.glassfish.grizzly.http.util.MessageBytes mb
        start local 2 // boolean query
         0: .line 186
            aload 1 /* mb */
            iload 2 /* query */
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.util.UDecoder.allowEncodedSlash:Z
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/MessageBytes;ZZ)V
         1: .line 187
            return
        end local 2 // boolean query
        end local 1 // org.glassfish.grizzly.http.util.MessageBytes mb
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1     mb  Lorg/glassfish/grizzly/http/util/MessageBytes;
            0    2     2  query  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      mb     
      query  

  public static void convert(org.glassfish.grizzly.http.util.MessageBytes, boolean, boolean);
    descriptor: (Lorg/glassfish/grizzly/http/util/MessageBytes;ZZ)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.glassfish.grizzly.http.util.MessageBytes mb
        start local 1 // boolean query
        start local 2 // boolean allowEncodingSlash
         0: .line 194
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.MessageBytes.getType:()I
            tableswitch { // 1 - 3
                    1: 1
                    2: 9
                    3: 6
              default: 11
          }
         1: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.MessageBytes.toString:()Ljava/lang/String;
            astore 3 /* strValue */
        start local 3 // java.lang.String strValue
         2: .line 197
            aload 3 /* strValue */
            ifnonnull 4
         3: .line 198
            return
         4: .line 200
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* mb */
            aload 3 /* strValue */
            iload 1 /* query */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual org.glassfish.grizzly.http.util.MessageBytes.setString:(Ljava/lang/String;)V
         5: .line 201
            goto 11
        end local 3 // java.lang.String strValue
         6: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.MessageBytes.getCharChunk:()Lorg/glassfish/grizzly/http/util/CharChunk;
            astore 4 /* charC */
        start local 4 // org.glassfish.grizzly.http.util.CharChunk charC
         7: .line 204
            aload 4 /* charC */
            iload 1 /* query */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/CharChunk;Z)V
         8: .line 205
            goto 11
        end local 4 // org.glassfish.grizzly.http.util.CharChunk charC
         9: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* mb */
            invokevirtual org.glassfish.grizzly.http.util.MessageBytes.getByteChunk:()Lorg/glassfish/grizzly/http/util/ByteChunk;
            astore 5 /* bytesC */
        start local 5 // org.glassfish.grizzly.http.util.ByteChunk bytesC
        10: .line 208
            aload 5 /* bytesC */
            iload 1 /* query */
            iload 2 /* allowEncodingSlash */
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Lorg/glassfish/grizzly/http/util/ByteChunk;ZZ)V
        end local 5 // org.glassfish.grizzly.http.util.ByteChunk bytesC
        11: .line 211
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean allowEncodingSlash
        end local 1 // boolean query
        end local 0 // org.glassfish.grizzly.http.util.MessageBytes mb
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   12     0                  mb  Lorg/glassfish/grizzly/http/util/MessageBytes;
            0   12     1               query  Z
            0   12     2  allowEncodingSlash  Z
            2    6     3            strValue  Ljava/lang/String;
            7    9     4               charC  Lorg/glassfish/grizzly/http/util/CharChunk;
           10   11     5              bytesC  Lorg/glassfish/grizzly/http/util/ByteChunk;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                    Name  Flags
      mb                  
      query               
      allowEncodingSlash  

  public static java.lang.String convert(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String str
         0: .line 216
            aload 0 /* str */
            iconst_1
            invokestatic org.glassfish.grizzly.http.util.UDecoder.convert:(Ljava/lang/String;Z)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public static java.lang.String convert(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // java.lang.String str
        start local 1 // boolean query
         0: .line 220
            aload 0 /* str */
            ifnonnull 2
         1: .line 221
            aconst_null
            areturn
         2: .line 224
      StackMap locals:
      StackMap stack:
            iload 1 /* query */
            ifeq 3
            aload 0 /* str */
            bipush 43
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 5
      StackMap locals:
      StackMap stack:
         3: aload 0 /* str */
            bipush 37
            invokevirtual java.lang.String.indexOf:(I)I
            ifge 5
         4: .line 225
            aload 0 /* str */
            areturn
         5: .line 228
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* dec */
        start local 2 // java.lang.StringBuilder dec
         6: .line 229
            iconst_0
            istore 3 /* strPos */
        start local 3 // int strPos
         7: .line 230
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            istore 4 /* strLen */
        start local 4 // int strLen
         8: .line 232
            aload 2 /* dec */
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.lang.StringBuilder.ensureCapacity:(I)V
         9: .line 233
            goto 31
        10: .line 237
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            iload 3 /* strPos */
            istore 5 /* laPos */
        start local 5 // int laPos
        11: goto 17
        12: .line 238
      StackMap locals: int
      StackMap stack:
            aload 0 /* str */
            iload 5 /* laPos */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* laChar */
        start local 6 // char laChar
        13: .line 239
            iload 6 /* laChar */
            bipush 43
            if_icmpne 14
            iload 1 /* query */
            ifne 18
      StackMap locals: int
      StackMap stack:
        14: iload 6 /* laChar */
            bipush 37
            if_icmpne 16
        15: .line 240
            goto 18
        end local 6 // char laChar
        16: .line 237
      StackMap locals:
      StackMap stack:
            iinc 5 /* laPos */ 1
      StackMap locals:
      StackMap stack:
        17: iload 5 /* laPos */
            iload 4 /* strLen */
            if_icmplt 12
        18: .line 245
      StackMap locals:
      StackMap stack:
            iload 5 /* laPos */
            iload 3 /* strPos */
            if_icmple 21
        19: .line 246
            aload 2 /* dec */
            aload 0 /* str */
            iload 3 /* strPos */
            iload 5 /* laPos */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 247
            iload 5 /* laPos */
            istore 3 /* strPos */
        21: .line 251
      StackMap locals:
      StackMap stack:
            iload 3 /* strPos */
            iload 4 /* strLen */
            if_icmplt 23
        22: .line 252
            goto 32
        23: .line 256
      StackMap locals:
      StackMap stack:
            aload 0 /* str */
            iload 3 /* strPos */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* metaChar */
        start local 6 // char metaChar
        24: .line 257
            iload 6 /* metaChar */
            bipush 43
            if_icmpne 28
        25: .line 258
            aload 2 /* dec */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        26: .line 259
            iinc 3 /* strPos */ 1
        27: .line 260
            goto 31
      StackMap locals: int
      StackMap stack:
        28: iload 6 /* metaChar */
            bipush 37
            if_icmpne 31
        29: .line 264
            aload 2 /* dec */
            aload 0 /* str */
            iload 3 /* strPos */
            iconst_1
            iadd
            iload 3 /* strPos */
            iconst_3
            iadd
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            bipush 16
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;I)I
            i2c
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        30: .line 265
            iinc 3 /* strPos */ 3
        end local 6 // char metaChar
        end local 5 // int laPos
        31: .line 233
      StackMap locals:
      StackMap stack:
            iload 3 /* strPos */
            iload 4 /* strLen */
            if_icmplt 10
        32: .line 269
      StackMap locals:
      StackMap stack:
            aload 2 /* dec */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // int strLen
        end local 3 // int strPos
        end local 2 // java.lang.StringBuilder dec
        end local 1 // boolean query
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   33     0       str  Ljava/lang/String;
            0   33     1     query  Z
            6   33     2       dec  Ljava/lang/StringBuilder;
            7   33     3    strPos  I
            8   33     4    strLen  I
           11   31     5     laPos  I
           13   16     6    laChar  C
           24   31     6  metaChar  C
    MethodParameters:
       Name  Flags
      str    
      query  

  private static boolean isHexDigit(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int c
         0: .line 273
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmple 4
      StackMap locals:
      StackMap stack:
         1: iload 0 /* c */
            bipush 97
            if_icmplt 2
            iload 0 /* c */
            bipush 102
            if_icmple 4
      StackMap locals:
      StackMap stack:
         2: iload 0 /* c */
            bipush 65
            if_icmplt 3
            iload 0 /* c */
            bipush 70
            if_icmple 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // int c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     c  I
    MethodParameters:
      Name  Flags
      c     

  private static int x2c(byte, byte);
    descriptor: (BB)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // byte b1
        start local 1 // byte b2
         0: .line 277
            iload 0 /* b1 */
            bipush 65
            if_icmplt 1
            iload 0 /* b1 */
            sipush 223
            iand
            bipush 65
            isub
            bipush 10
            iadd
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* b1 */
            bipush 48
            isub
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* digit */
        start local 2 // int digit
         3: .line 278
            iload 2 /* digit */
            bipush 16
            imul
            istore 2 /* digit */
         4: .line 279
            iload 2 /* digit */
            iload 1 /* b2 */
            bipush 65
            if_icmplt 5
            iload 1 /* b2 */
            sipush 223
            iand
            bipush 65
            isub
            bipush 10
            iadd
            goto 6
      StackMap locals: int int int
      StackMap stack: int
         5: iload 1 /* b2 */
            bipush 48
            isub
      StackMap locals: int int int
      StackMap stack: int int
         6: iadd
            istore 2 /* digit */
         7: .line 280
            iload 2 /* digit */
            ireturn
        end local 2 // int digit
        end local 1 // byte b2
        end local 0 // byte b1
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0     b1  B
            0    8     1     b2  B
            3    8     2  digit  I
    MethodParameters:
      Name  Flags
      b1    
      b2    

  private static int x2c(char, char);
    descriptor: (CC)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // char b1
        start local 1 // char b2
         0: .line 284
            iload 0 /* b1 */
            bipush 65
            if_icmplt 1
            iload 0 /* b1 */
            sipush 223
            iand
            bipush 65
            isub
            bipush 10
            iadd
            goto 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* b1 */
            bipush 48
            isub
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* digit */
        start local 2 // int digit
         3: .line 285
            iload 2 /* digit */
            bipush 16
            imul
            istore 2 /* digit */
         4: .line 286
            iload 2 /* digit */
            iload 1 /* b2 */
            bipush 65
            if_icmplt 5
            iload 1 /* b2 */
            sipush 223
            iand
            bipush 65
            isub
            bipush 10
            iadd
            goto 6
      StackMap locals: int int int
      StackMap stack: int
         5: iload 1 /* b2 */
            bipush 48
            isub
      StackMap locals: int int int
      StackMap stack: int int
         6: iadd
            istore 2 /* digit */
         7: .line 287
            iload 2 /* digit */
            ireturn
        end local 2 // int digit
        end local 1 // char b2
        end local 0 // char b1
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0     b1  C
            0    8     1     b2  C
            3    8     2  digit  I
    MethodParameters:
      Name  Flags
      b1    
      b2    

  public boolean isAllowEncodedSlash();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
         0: .line 291
            aload 0 /* this */
            getfield org.glassfish.grizzly.http.util.UDecoder.allowEncodedSlash:Z
            ireturn
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/http/util/UDecoder;

  public void setAllowEncodedSlash(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.http.util.UDecoder this
        start local 1 // boolean allowEncodedSlash
         0: .line 300
            aload 0 /* this */
            iload 1 /* allowEncodedSlash */
            putfield org.glassfish.grizzly.http.util.UDecoder.allowEncodedSlash:Z
         1: .line 301
            return
        end local 1 // boolean allowEncodedSlash
        end local 0 // org.glassfish.grizzly.http.util.UDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lorg/glassfish/grizzly/http/util/UDecoder;
            0    2     1  allowEncodedSlash  Z
    MethodParameters:
                   Name  Flags
      allowEncodedSlash  
}
SourceFile: "UDecoder.java"